Граф коммитов

106 Коммитов

Автор SHA1 Сообщение Дата
briano%netscape.com 8394a60939 Fixed the bug that was assuming Linux==x86 (only). 1999-03-26 23:06:38 +00:00
danm%netscape.com 9d90b52b72 removing glowcode. a:jband 1999-03-26 02:37:22 +00:00
mccabe%netscape.com 4450173143 Move xptinfo, xptcall from export phase (erroneously copied from libxpt Makefile.in) to libs and back out previous temporary fix.
Finishing checkin.  Hopefully all is OK.
1999-03-25 10:35:19 +00:00
mccabe%netscape.com 4d4e61a4dd Move xptinfo, xptcall from export phase (erroneously copied from libxpt Makefile.in) to libs and back out previous tree patch. 1999-03-25 10:28:39 +00:00
jband%netscape.com e0c20dd684 fix build bustage due to use of nscore.h before it is exported - I don't understand why this stuff is being compiled in the export phase. We can that later. 1999-03-25 09:05:28 +00:00
mccabe%netscape.com 0d46aaa627 Adding libxpt and xpconnect to the build. 1999-03-25 07:50:11 +00:00
warren%netscape.com 9ed31cf894 Added GetMethodInfoForName 1999-03-25 07:30:47 +00:00
jband%netscape.com 1b72836b93 use nspr type 1999-03-25 03:37:40 +00:00
jband%netscape.com 9a923d2130 add implementation files for unsupported platforms to allow clean build on all platforms even though we'll have failure at runtime on unsupported platforms 1999-03-23 22:16:14 +00:00
jband%netscape.com 9adc279405 fix test Makefile.in 1999-03-23 07:19:15 +00:00
jband%netscape.com de37f0faf5 fix test Makefile.in 1999-03-23 07:16:53 +00:00
jband%netscape.com 95bae7cba5 fix filename 1999-03-23 07:04:52 +00:00
jband%netscape.com 4b66e49f5a initial checking of xptcall code. This module allows arbitrary invocation of xpcom methods and also allows an object to impersonate an object of an arbitrary xpcom class. This code is used for XPConnect and will also be used for a scriptable interface to RDF. The build scheme for libxpt, xptinfo, and xpconnect may be a bit screwy on some platforms until this settles down. Luckily, none of these modules are part of the client build yet and very few people should even notice the change 1999-03-23 02:23:29 +00:00
leaf%mozilla.org 4ad9f70d5d Landing nspr library name change, and plevent function call change. 1999-03-17 21:32:03 +00:00
mccabe%netscape.com 44463b458c Another reworking of the loader -
- added a forward declaration of nsIInterfaceInfoManager to xptinfo.h

- reworked and cleaned up most aspects of the loader; typelib files now get associated typelib records, which have arrays of pointers to shared interface records; no hashtable lookup is necessary to resolve index pointers from params, etc to nsInterfaceInfo objects.

- moved to two hashtables in nsInterfaceInfoManager, mapping from name->interface record and iid->interface record.  Still unclear if I handle the different-iid, same-name case correctly.
1999-03-15 05:50:11 +00:00
jband%netscape.com a6e22fd8aa more to fix assumption that interfaces don't have the pointer bit set 1999-03-13 09:09:26 +00:00
jband%netscape.com 95c5de89a9 made in params const, added some comments 1999-03-13 01:34:37 +00:00
jband%netscape.com 318cbab4df fix assumption that interfaces don't have the poointer bit set 1999-03-13 01:31:48 +00:00
mccabe%netscape.com 1f415231ec Fixed a place where I was missing an NS_RELEASE, thanks jband. 1999-03-13 00:56:47 +00:00
mccabe%netscape.com 25ebe42e73 Not part of seamonkey.
Removed awkward nsXPTParamInfo::GetInterface and friend, and als removed supporting nsXPTParamInfo.cpp file.  Replace by nsIInterfaceInfo::GetInfoForParam and friend.

Made the constructor for nsInterfaceInfo private, with nsInterfaceInfoManager as a friend class.
1999-03-12 06:49:01 +00:00
jband%netscape.com 41b9e6001a get xptinfo building on Win32 again 1999-03-11 02:21:23 +00:00
coop%netscape.com c6c0714f4f NOT YET PART OF SEAMONKEY:
* added improved error message for IID collision.
1999-03-11 02:15:53 +00:00
coop%netscape.com bec672cfc0 NOT YET PART OF SEAMONKEY:
* one character fix (D'oh!) to make InterfaceTypeDescriptor indices update properly.
1999-03-10 23:41:04 +00:00
coop%netscape.com 8d12155d19 NOT YET PART OF SEAMONKEY:
* first annotation indicates that resulting typelib was created by the linker.
* annotations from files being linked in are now preserved.
1999-03-10 20:40:17 +00:00
coop%netscape.com 3c25f1eef4 NOT YET PART OF SEAMONKEY:
* xpt_dump now checks num_methods and num_constants before trying to walk the arrays.
* xpt_link now actually links. It even updates interfaces indices. Tested using all the idl files in mozilla/xpcom/idl.
1999-03-10 19:44:36 +00:00
mccabe%netscape.com b625b6aa37 Added tests of getting info assoc'd with params to TestInterfaceInfo.cpp, which uncovered an off-by-one problem due to magic typelib offsets for nsXPTParamInfo. Which makes me wonder if we shouldn't have just said #define XPT_INDEX_NO_PARENT 0xFFFF. 1999-03-10 10:36:13 +00:00
mccabe%netscape.com 1a1a2d5d23 Not yet part of the Monkey.
- Added magic comments to make the LXR browsing experience more pleasant.

- introduced the nsInterfaceRecord class (formerly less formally interface_record).

- changed the XPTInterfaceDirectoryEntry pointer in InterfaceInfoes into nsInterfaceRecord pointers, removing the need for a hash just to go from entries to records to support nsXPTParamInfo::GetInterface.

- made the destructor for InterfaceInfo objects remove null the pointer in the corresponding reference.
1999-03-10 09:30:48 +00:00
mccabe%netscape.com c95fc2f4b8 Not part of seamonkey.
Added a comment saying preconditions the tests actually needs to
succeed.  (also simplified these some.)
1999-03-10 08:22:17 +00:00
mccabe%netscape.com 4f6e0a7c6e Not part of seamonkey.
Fixed bustage due to improper use of DEBUG_somehacker.
1999-03-10 06:59:53 +00:00
jband%netscape.com 122488c723 making it compile on Win32 1999-03-10 06:36:03 +00:00
mccabe%netscape.com 5a43e6a2dd Not part of seamonkey.
API change - changed nsXPTParamInfo from taking an InterfaceDirectoryEntry* (which really isn't part of the API I want to expose) to taking an nsIInterfaceInfo*, which is.
1999-03-10 06:06:19 +00:00
mccabe%netscape.com a7a7b4f959 Not yet part of Seamonkey.
Progress on the nsInterfaceInfoManager typelib loader for xpconnect.
Now has complete (I think) functionality, though the implementation is
still probably rusty.

I punted on defining a directory for .xpt files at this point; the
implementation looks at the value of the XPTDIR environment variable
for this value.

Note that the nsXPTParaminfo interface (public/xpt_cpp) has changed
(possibly temporarily) to take an 'entry' parameter.
1999-03-10 04:26:15 +00:00
mccabe%netscape.com 9ad7c135d1 Chop xptinfo from the list of sub-Makes built by libxpt during coding
thrash.
1999-03-09 04:10:30 +00:00
coop%netscape.com a356faf7da NOT YET PART OF SEAMONKEY:
* initial pass at handling the update of interface indices.
1999-03-09 02:51:22 +00:00
shaver%netscape.com bf2718b64b ignore generated files 1999-03-08 21:27:03 +00:00
coop%netscape.com 244b59ee4f NOT YET PART OF SEAMONKEY:
* linker now sorts based on IIDs
* xpt_dump no longer complains about md->result if it is of the correct retval type
1999-03-08 21:13:58 +00:00
shaver%netscape.com df77619c4a display method flags, handle bogus indices 1999-03-08 21:11:08 +00:00
shaver%netscape.com 2636f0fba1 Make params include the name of the interface referenced. 1999-03-08 20:33:35 +00:00
coop%netscape.com 23aac1de6d NOT YET PART OF SEAMONKEY:
* changing references to interfaces (within structs) to be indices rather than pointers
* updated xpt_dump and xpt_link code to reflect above change
1999-03-08 19:47:09 +00:00
shaver%netscape.com d55deef772 fix remnant of 32-bit interface references 1999-03-08 03:56:14 +00:00
shaver%netscape.com c31d863018 Add XPT_InterfaceDescriptorAddConsts to API. 1999-03-06 19:40:34 +00:00
jband%netscape.com aae72939cf makefile fixups to get xptinfo working on Win32. Added xptinfo.h for public dll declarations 1999-03-02 07:59:53 +00:00
mccabe%netscape.com 8c24b0a7f5 Not yet part of Seamonkey.
Changed from using malloc to (much less, but still slightly) hacked
nsIAllocator service.
1999-03-02 05:38:27 +00:00
mccabe%netscape.com 40181d78ce Not yet part of the seamonkey build.
Moved nsInterfaceInfoManager files from the libxpt directory (where
they would have precipitated an unpleasant circular dependency between
xpidl and nsISupports.h) into a new subdirectory.

Added corresponding entries to allmakefiles.sh.

nsInterfaceInfoManager is intended to abstract the loading and
management of typelib information generated by xpidl, for use by
xpconnect.
1999-03-02 05:21:31 +00:00
mccabe%netscape.com 6674e1b86b Initial checkin of typelib loading service. 1999-02-25 22:56:43 +00:00
coop%netscape.com bca65dbd8e NOT YET PART OF SEAMONKEY:
* first pass at typelib linker
* parent_interface modification is untested
* interface offset management is unimplemented
* what to do about annotations?
1999-02-25 17:45:11 +00:00
coop%netscape.com 0c1ab19c56 NOT YET PART OF SEAMONKEY:
* fixed casting problem in calls to Do8
1999-02-23 16:17:37 +00:00
alecf%netscape.com 544d9d773b make these libraries build during the export phase 1999-02-18 22:36:27 +00:00
coop%netscape.com 4a28ad0dc3 NOT YET PART OF SEAMONKEY:
* now close input file in all cases
* warn user about params with no in/out flag information
* more internal error checking
1999-02-18 22:29:59 +00:00
shaver%netscape.com d96b4c6f50 fix InterfaceDescriptorAddMethods to not randomly overwrite memory, and fix
DoMethodDescriptor to not randomly overwrite md->result
1999-02-18 17:36:46 +00:00