Commit Graph

216 Commits

Author SHA1 Message Date
shaver%netscape.com
b03b382f3e Make params include the name of the interface referenced.
git-svn-id: svn://10.0.0.236/trunk@23194 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-08 20:33:35 +00:00
coop%netscape.com
60b95e8294 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


git-svn-id: svn://10.0.0.236/trunk@23187 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-08 19:47:09 +00:00
shaver%netscape.com
8fe29cabbc fix remnant of 32-bit interface references
git-svn-id: svn://10.0.0.236/trunk@23154 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-08 03:56:14 +00:00
shaver%netscape.com
d67b62db13 Add XPT_InterfaceDescriptorAddConsts to API.
git-svn-id: svn://10.0.0.236/trunk@23069 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-06 19:40:34 +00:00
jband%netscape.com
9da670ea9b makefile fixups to get xptinfo working on Win32. Added xptinfo.h for public dll declarations
git-svn-id: svn://10.0.0.236/trunk@22545 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-02 07:59:53 +00:00
mccabe%netscape.com
ddf198d345 Not yet part of Seamonkey.
Changed from using malloc to (much less, but still slightly) hacked
nsIAllocator service.


git-svn-id: svn://10.0.0.236/trunk@22538 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-02 05:38:27 +00:00
mccabe%netscape.com
0217662ca2 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.


git-svn-id: svn://10.0.0.236/trunk@22533 18797224-902f-48f8-a5cc-f745e15eee43
1999-03-02 05:21:31 +00:00
mccabe%netscape.com
5a91ac81df Initial checkin of typelib loading service.
git-svn-id: svn://10.0.0.236/trunk@21981 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-25 22:56:43 +00:00
coop%netscape.com
e17dee7c12 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?


git-svn-id: svn://10.0.0.236/trunk@21921 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-25 17:45:11 +00:00
coop%netscape.com
239234185f NOT YET PART OF SEAMONKEY:
* fixed casting problem in calls to Do8


git-svn-id: svn://10.0.0.236/trunk@21602 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-23 16:17:37 +00:00
alecf%netscape.com
b0cb95cfba make these libraries build during the export phase
git-svn-id: svn://10.0.0.236/trunk@21212 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-18 22:36:27 +00:00
coop%netscape.com
52d9b10a97 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


git-svn-id: svn://10.0.0.236/trunk@21207 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-18 22:29:59 +00:00
shaver%netscape.com
e12b558d1f fix InterfaceDescriptorAddMethods to not randomly overwrite memory, and fix
DoMethodDescriptor to not randomly overwrite md->result


git-svn-id: svn://10.0.0.236/trunk@21155 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-18 17:36:46 +00:00
shaver%netscape.com
7f3aa35988 binary files are required (thanks, jband). also fix typo
git-svn-id: svn://10.0.0.236/trunk@21093 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-18 02:53:08 +00:00
shaver%netscape.com
9aaaefcbe2 Report read failure and short reads (should handle short reads better! RSN!).
File length is a size_t now, not an int.


git-svn-id: svn://10.0.0.236/trunk@21066 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-18 00:42:01 +00:00
coop%netscape.com
6b258d8513 NOT YET PART OF SEAMONKEY:
* replaces reference to unistd.h by stdlib.h


git-svn-id: svn://10.0.0.236/trunk@20980 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-17 17:36:01 +00:00
jband%netscape.com
de84b5da7e get this code compiling in win32
git-svn-id: svn://10.0.0.236/trunk@20902 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-17 07:05:36 +00:00
coop%netscape.com
2e906139b0 NOT YET PART OF SEAMONKEY:
* eliminated compiler warnings on Linux
* added extra error checking for file manipulation in SimpleTypeLib and xpt_dump
* removed erroneous comment from xpt_struct.h


git-svn-id: svn://10.0.0.236/trunk@20801 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-16 18:41:30 +00:00
coop%netscape.com
789a083e10 NOT YET PART OF SEAMONKEY:
* changed type descriptor tag defines into one big enum
* made corresponding changes to xpt_dump


git-svn-id: svn://10.0.0.236/trunk@20264 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-10 17:44:05 +00:00
coop%netscape.com
4c886d1021 NOT YET PART OF SEAMONKEY:
* added function XPT_GetInterfaceIndexByName
* replaced remaining occurences of 'namespace' with 'name_space' to keep C++ happy
* added xpt_dump display for param types (in/out/retval)
* changed xpt_dump handling for wchar_t strings
* use shaver's print_IID function when displaying type descriptors
* removed DoAnnotations (not used)


git-svn-id: svn://10.0.0.236/trunk@20058 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-09 00:14:38 +00:00
jband%netscape.com
ebc5ecdc49 NOT PART OF SEAMONKEY - a bunch of fixes to get it building on win32
git-svn-id: svn://10.0.0.236/trunk@20036 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-08 21:47:35 +00:00
shaver%netscape.com
165ac99ba0 move includes outside #ifdef for precompiled-header love, also PR_EXTERN_C
git-svn-id: svn://10.0.0.236/trunk@20017 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-08 19:48:48 +00:00
shaver%netscape.com
874949f141 Windows make goop
git-svn-id: svn://10.0.0.236/trunk@20009 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-08 18:34:54 +00:00
shaver%netscape.com
22f1e69f02 Added XPT_InterfaceDescriptorAddMethods to grow the method table.
Removed unused XPT_ALLOC macro.
Move XPT_SetDataOffset calls into XPT_DoHeader so that the API consumer doesn't
need to know about header sizing and IDE layout guck.
Handle NULL namespaces and interface_directory bits snd idents better.
Made xpt_dump show the the IID for interfaces.


git-svn-id: svn://10.0.0.236/trunk@19992 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-08 16:30:22 +00:00
coop%netscape.com
f612d438db NOT YET PART OF SEAMONKEY:
* added support for non-verbose mode as default for typelib dumper.


git-svn-id: svn://10.0.0.236/trunk@19647 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-04 03:16:07 +00:00
coop%netscape.com
4787cd5e13 NOT YET PART OF SEAMONKEY:
* add command-line flag for verbose mode, which will soon not be the default
* now outputs to stdout
* added output for int64, uint64, and wchar


git-svn-id: svn://10.0.0.236/trunk@19615 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-04 00:31:59 +00:00
shaver%netscape.com
24c5daca8b (NOT YET PART OF SEAMONKEY)
Update to use 16-bit IDE indices (one-based) instead of header-pool offsets.
Removed debugging cruft.
Added prototypes to get rid of warnings.
Fix many dumb mistakes WRT allocation and index checking.


git-svn-id: svn://10.0.0.236/trunk@19582 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-03 21:37:25 +00:00
coop%netscape.com
974dbf9b53 NOT YET PART OF SEAMONKEY:
* fixed header pointer assignment problem
* removed useless defines
* added correct level of indirection for sub-structs of header


git-svn-id: svn://10.0.0.236/trunk@19259 18797224-902f-48f8-a5cc-f745e15eee43
1999-02-02 01:26:36 +00:00
coop%netscape.com
6e4af8f9ef NOT YET PART OF SEAMONKEY:
* added directory libxpt/tools which currently only contains the typelib dumper
* removed dump code from tests dir
* added/modified appropriate Makefiles and configure scripts


git-svn-id: svn://10.0.0.236/trunk@19068 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-30 01:10:01 +00:00
coop%netscape.com
c59da5af63 NOT YET PART OF SEAMONKEY:
* committing fixes for shaver
* header pointer is now set XPT_DoHeader
* fixed assertion error in CHECK_COUNT macro


git-svn-id: svn://10.0.0.236/trunk@19065 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-30 01:03:54 +00:00
coop%netscape.com
49a193f463 NOT YET PART OF SEAMONKEY:
* added macros for checking bitflag values
* dump code is complete, minus actually reading from disk.


git-svn-id: svn://10.0.0.236/trunk@18912 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-28 06:01:56 +00:00
shaver%netscape.com
468ba6a0cf fix header.data_pool writing
git-svn-id: svn://10.0.0.236/trunk@18879 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-28 01:55:24 +00:00
coop%netscape.com
d91301c106 NOT YET PART OF SEAMONKEY:
* fixed XPT_SizeOfHeader. It wasn't actually walking the annotations, but it does now.
* added some basic dumping code to SimpleTypeLib. Currently only the headers can be dumped. Once XDR read code is up and running, this dumping code will become a separate utility, most likely under a libxpt/tools subdir.


git-svn-id: svn://10.0.0.236/trunk@18752 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-27 06:32:57 +00:00
shaver%netscape.com
50af4f507e Fixed method and type descriptors, made const descriptors go.
git-svn-id: svn://10.0.0.236/trunk@18633 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-26 19:31:25 +00:00
shaver%netscape.com
4764e3bd54 fixed fencepost in XPT_DoHeader, along with more error-checking
git-svn-id: svn://10.0.0.236/trunk@18559 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-26 01:34:21 +00:00
shaver%netscape.com
d08f3acd1b Fixed IID copying (duh -- all the bytes matter).
NewString and NewStringZ APIs.
No more bit-fields (nod to jband and fur, thanks).
Cleaned up Annotation structures.
On-disk offsets are 1-based.
Write annotations to disk, and account for them in header size, etc.
Fix sundry cursor-vs-&cursor bugs and don't-allocate-on-decode bugs.
Write MethodDescriptors and InterfaceDescriptors to disk!
Executive Summary: can now write very simple .xpt files!


git-svn-id: svn://10.0.0.236/trunk@18505 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-25 19:36:48 +00:00
mcafee%netscape.com
88a347ab56 Switching to SIMPLE_PROGRAMS
git-svn-id: svn://10.0.0.236/trunk@18447 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-23 12:21:27 +00:00
shaver%netscape.com
2d41ee208d Added prototypes for Header XDR functions.
Minor brace-placement tweaks.
Added SimpleTypeLib test program, although it doesn't build due to Makefile.in
suckage.
Fixed XPT_DoHeader to only write IDEs once (duh).
Added SizeOfHeaderBlock to API.


git-svn-id: svn://10.0.0.236/trunk@18317 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 17:53:35 +00:00
mcafee%netscape.com
bec9fa4dee Yanked rules that are in rules.mk
git-svn-id: svn://10.0.0.236/trunk@18294 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 12:14:51 +00:00
shaver%netscape.com
2f66be3784 Added methods to create or fill headers, IDEs, interface descriptors,
method descriptors, param descriptors, const descriptors (partial)
and annotations.
Rejigged XPTAnnotation for proper struct nesting and linked-listed-ness.
Implemented SizeOfHeader (partially).
Fixed data_pool handling in XPT_DoHeader.
Implemented XPT_SeekTo and XPT_DoIID.


git-svn-id: svn://10.0.0.236/trunk@18277 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-22 09:13:02 +00:00
shaver%netscape.com
07a4b636fb test DoString
git-svn-id: svn://10.0.0.236/trunk@18193 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 20:05:58 +00:00
shaver%netscape.com
7d1aefc5e1 allocate memory for str->bytes in DoString decode, duh
git-svn-id: svn://10.0.0.236/trunk@18192 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 20:05:27 +00:00
shaver%netscape.com
5d43857d3d fix dumb DBG thing
git-svn-id: svn://10.0.0.236/trunk@18186 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 19:21:58 +00:00
coop%netscape.com
5230673778 NOT YET PART OF SEAMONKEY:
* removed struct size #defines -> they were just silly anyway.
* replaced references to IDE file offsetsi with uint32 indices.
* first attempt at sorting out order of storage for XPTHeader and XPTInterfaceDirectoryEntry


git-svn-id: svn://10.0.0.236/trunk@18185 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 19:18:47 +00:00
shaver%netscape.com
ec12610954 Better cursor management stuff.
Mild macro renaming.
Debugging output from CHECK_COUNT.
Fixed primitives and PrimitiveTest: we now pass! (32, 16, 8 and CString)
Dynamically link PrimitiveTest.


git-svn-id: svn://10.0.0.236/trunk@18176 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-21 17:37:54 +00:00
shaver%netscape.com
b7788d4156 added some tests (we don't pass yet =) ), wrote some primitives
git-svn-id: svn://10.0.0.236/trunk@18087 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-20 23:17:05 +00:00
coop%netscape.com
46278f0bfa NOT YET PART OF SEAMONKEY:
* added looping to read/write InterfaceDirectoryEntrys
* InterfaceDescriptors are no longer DECODEd as part of the IDE DECODEing process
* added skeleton for XPT_GetDescriptorByOffset


git-svn-id: svn://10.0.0.236/trunk@18076 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-20 17:58:14 +00:00
coop%netscape.com
7383c42ad7 NOT YET PART OF SEAMONKEY:
* added offset management code in the form of calls to shaver's macros


git-svn-id: svn://10.0.0.236/trunk@18038 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-19 23:46:20 +00:00
coop%netscape.com
df9664e830 NOT YET PART OF SEAMONKEY:
* added #defines for is_pointer/tag combos used in TypeDescriptors to match table in typelib spec.
* now handle error case in xpt_struct.c using macro
* still must do offset management


git-svn-id: svn://10.0.0.236/trunk@17966 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-18 22:04:49 +00:00
coop%netscape.com
c47ab182ae NOT YET PART OF SEAMONKEY:
* modified in-memory structs slightly to get them to compile
* xpt_strcut.c now compiles, and with no warnings (at no extra charge)
* still must do offset management


git-svn-id: svn://10.0.0.236/trunk@17963 18797224-902f-48f8-a5cc-f745e15eee43
1999-01-18 19:53:47 +00:00