DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7077>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7077

ICUMsgLoader doesn't load messages!





------- Additional Comments From [EMAIL PROTECTED]  2002-11-28 22:20 -------
The attachment contains my changes. Here's the basic idea behind these changes:

1. "pkgdata -m static" is used to build the msg catalogs into a static library.
2. The makefiles were modified to build and link the resulting static library.
3. The ICUMsgLoader.cpp file uses udata_setAppData(path,data,err) to tell ICU
   where the msg catalog is in memory. The "data" parameter is the address of
   a data structure generated in the static library.
4. The name given to the data is "XMLMsgs".  Read the comments at the start of
   ICUMsgLoader.cpp for details on how all this works.
5. The code in ICUMsgLoader.cpp was modified to simply index the appropriate
   table from the data and retrieve the string.
6. See the Makefile.in for details on handling the resource data files.

NOTE: Although the coding is complete, there are some issues with this 
implementation:

1. For some reason the changes in obj/Makefile.in don't seem to cause the
   static library to be linked in (despite the -lXMLMsgs on the command line).
   This causes a runtime loader error (fatal). So, DO NOT commit this code or
   you'll break all of Xerces!  When I figure out why the static library is
   not linked in, I'll post an update to this bug.
2. This code hasn't been tested very well. It was culled from another message
   loader that has been tested well, however.
3. The strategy of linking the message catalog into the shared object may have
   some size ramifications. However, this approach is easier for the end user 
   to deal with because he doesn't have to make sure that the XMLMsgs.dat file
   is placed in a particular directory where ICU can find it (although some
   config & install magic might help with that).

Hope this helps.

Reid

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to