On Feb 14, 2005, at 10:11 PM, Tim Murison wrote:
Hi,
I'm hoping someone might be able to shed some light on this...
I have a function that executes a DB query and returns a vector<string> of the results. I have just started to add logging to my program, so just before returning the vector, I issue a logging statement:
LOG4CXX_INFO(logger, "Done read query");
Here the weird bit. If I comment out the logging statement, the vector elements are something like: [1, OBJECT, 2] With the logging statement the elements are: [1, Done read query, 2]
Strange indeed. I don't see anything obvious in the header expansion that could explain that. I'm surprised that any overflow would leave things in such a nice condition.
I am using log4cxx 0.9.7. I have tried compiling CVS HEAD, but it fails with some scary messages (both using autogen and ant).
There will be one message about assigning a pointer to an integer of a different size that should be harmless. That occurs in the code that converts a thread* to an hex number. Since there isn't a handy portable type for "integer the same size as a pointer", the code assigns a pointer to a 64-bit integer resulting in that message on 32-bit platforms.
If you are failing to build or getting other scary messages, please file a bug report (http://nagoya.apache.org/jira) and I'll try to address them. You can use a "-l logfilename" on the Ant build to log the build. Please indicate platform, compiler, et al.
