On 16/12/06, Jean-Sebastien Delfino <[EMAIL PROTECTED]> wrote:
Under revision r487731 I added some code to Logger.cpp to check the length of log messages to avoid buffer overruns, in particular when logging big XML documents or SDOs. I also changed the buffer allocated on the stack from 4096 to 256 chars as most log messages are smaller than that, and bigger buffers are now allocated from the heap instead. I had to write this differently on Linux and Windows (vsnprintf on Linux and a combination of vnsprintf and _vscprintf on Windows). Could somebody try to compile and test this Mac-OS X as well? To test it, run any scenario that flows big XML docs (PythonWeatherForecast is a good one) with TUSCANY_SCACPP_LOGGING=2, and make sure that the log does not contain garbage and that the entire XML docs returned by the Web Service are logged .
I'll test it out on Mac but I'm having trouble building the REST extension. The tuscany_sca_rest_reference and tuscany_sca_rest_service both link with tuscany_sca_rest_interface. This causes duplicate definitions of the symbol tuscany_sca_extension_initialize... which sort of makes sense. We may need to split the tuscany_sca_interface library up into the part that is the extension and ... the rest if the other libs need to link against this. I take it this is not a problem on Linux? -- Pete
