Sherry Michael wrote:

Ah .. OK, that makes sense, although I did define XPCOM_STRICT_API and got no compiler warnings -- shouldn't there be warnings for references to unfrozed interfaces?

You can't count on it. We're getting better in the trunk codebase at issuing warnings when embedders link against non-frozen stuff, but preventing it is hard and in some cases undesirable.


I found this sample in mozilla\modules\plugin\samples\simple so I'll have to dig into it and see where the reference to an unfrozen interface might be.

The sample plugin appears to #include <nsString.h> which is the non-frozen string implementation. You should be using nsEmbedString.h instead. You should also probably be linking against one of the two versions of the XPCOM glue:

libxpcomglue.a is the "standalone" glue and requires you to call XPCOMGlueStartup() before you use any XPCOM imports, but you do not need to link against libxpcom.so at all.

libxpcomglue_s.a is the "sharedlib-dependent" version of the glue: you do not need to call XPCOMGlueStartup, but you have to maintain an ELF dependency by linking against libxpcom.so

--BDS
_______________________________________________
Mozilla-xpcom mailing list
[email protected]
http://mail.mozilla.org/listinfo/mozilla-xpcom

Reply via email to