Плагин перестал работать в Linux после перехода на использование GeckoSDK 1.9.1 - PullRequest
0 голосов
/ 25 февраля 2011

У меня есть плагин, который отлично работает, когда я связываю его с GeckoSDK 1.9.

Теперь я перешел на использование GeckoSDK 1.9.1.16, и он перестал обнаруживаться в Linux (в Windows он все еще работает нормально) - about: плагины больше не показывают!

Других изменений не было, кроме переключения каталогов INCLUDE / LIB в make-файле и переименования nppupp.h -> npfunctions.h.

Я тестировал его с бета-версиями Firefox 3.5, 3.6 и 4.0 - тот же результат.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 26 февраля 2011

Хорошо, если кому-то будет интересно, я отвечу на свой вопрос.

Оказывается, они не просто переименовали npupp.h -> npfunctions.h, но как-то переставили заголовки.

В результате npfunctions.h был включен до того, как XP_UNIX был определен (в prcpucfg.h), что, в свою очередь, привело к тому, что функции npentry (NP_GetMIMEDescription и т. Д.) В моем коде были определены без предварительного объявления, следовательно, имея связь с C ++ следовательно, браузер не может его найти.

Здравствуйте, Mozilla, что случилось с автономными заголовками?

1 голос
/ 25 февраля 2011

если это необработанный плагин NPAPI, я бы порекомендовал использовать проект npapi-headers , который предоставляет заголовки, которые должны работать во всех браузерах и на всех платформах.Заголовки npapi от gecko-sdk иногда доставляют мне проблемы.Я бы сказал, что по крайней мере стоит попробовать.

...