You _must_ link your executable with the same runtime as Xerces -- either
Multithreaded DLL or Debug multithreaded DLL.  That will fix the problem.

Dave



                                                                                
                                               
                    "h h"                                                       
                                               
                    <[EMAIL PROTECTED]        To:     [EMAIL PROTECTED]         
                                            
                    tmail.com>           cc:     (bcc: David N 
Bertoni/CAM/Lotus)                                              
                                         Subject:     free function for char * 
allocated by DOMString::transcode               
                    01/26/2001                                                  
                                               
                    04:42 AM                                                    
                                               
                    Please                                                      
                                               
                    respond to                                                  
                                               
                    xerces-dev                                                  
                                               
                                                                                
                                               
                                                                                
                                               



when freeing memory that was allocated by a xerces-c dll in char *
DOMString::transcode in another DLL under NT. I get an error message about
heaps not being the same.

I tried to use ArrayJanitor to do the free, but it does not consider
ArrayJanitor<char> as a member of xerces-c dll: ArrayJanitor is a template,

and its code is compiled in my program.

The only solution for me was to add a function to free the transcoded
characters in DOMString.cpp / hpp

in DOMString.hpp
CDOM_EXPORT void transcodeFree(char *c);

in DOMString.cpp
CDOM_EXPORT void transcodeFree(char *c)
{
    delete [] c;
}

please let me know what you think about this, and if it is possible to get
the fix in xerces-c thanks.
-- Sebastien
_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com





Reply via email to