###!!! ASSERTION: XPTC_InvokeByIndex called on unsupported platform:
'0', file xptcinvoke_unsupporte
d.cpp, line 46
Break: at file xptcinvoke_unsupported.cpp, line 46
JS Component Loader: ERROR (null):0
uncaught exception: unknown (can't convert to
string)
I went to see the list of platforms for xptcall and could not find my
processor there. So would i be correct in thinking that I cannot run
firefox on this platform or is there a way to build firefox without
this library.
Thank you for any help.
Sincerely
Pradeep
< Non-functional stub code exists to allow building xptcall on non-
supported platforms. But any browser feature that relies on xpconnect
will fail. >
Could you please direct me where I can get this information so that I
can run the firefox browser.
Thank you
Pradeep
Firefox relies heavily on xptcall, it is not possible to build without
it. You can port xptcall to your platform if you so choose:
http://lxr.mozilla.org/mozilla/source/xpcom/reflect/xptcall/porting.html
-Ted
> Could you please direct me where I can get this information so that I
> can run the firefox browser.
What information? Information on how to write the xptcall assembly code for
your platform? The best place is probably the existing assembly: You
basically need to implement two features: xptinvoke and xptstub.
Introduction docs: http://www.mozilla.org/scriptable/xptcall-faq.html
Porting docs:
http://lxr.mozilla.org/seamonkey/source/xpcom/reflect/xptcall/porting.html
xptinvoke is what handles calling a C++ virtual function (an XPCOM interface
method) with arbitrary types determined at runtime. You need to implement
NS_InvokeByIndex (or on the branch, XPTC_InvokeByIndex). See
http://mxr.mozilla.org/mozilla/source/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_gcc_x86_unix.cpp
xptstubs are the other side of the call, so that binary code can *implement*
arbitrary interfaces and call signatures at runtime. See, for instance,
http://mxr.mozilla.org/mozilla/source/xpcom/reflect/xptcall/src/md/unix/xptcstubs_gcc_x86_unix.cpp
--BDS
A follow-up question:
What is the current vision of xptcall future in mozilla2?
--
Sergey Yanovich
It will probably remain, but not be used for DOM and other critical
paths. Inside the core code we will deCOMtaminate aggressively.
The future of XPCOM is up in the air, but the JS XPCOM API implemented
by XPConnect (Components object etc.) should be maintained in Mozilla 2.
However, its implementation may be quite different.
/be