+ terminate xerces at program exit
This commit is contained in:
parent
6da5c23990
commit
2e43774c2f
|
@ -922,6 +922,7 @@ void Application::destruct(void)
|
|||
ScriptFactorySingleton::Destruct();
|
||||
InterpreterSingleton::Destruct();
|
||||
Base::Type::destruct();
|
||||
ParameterManager::Terminate();
|
||||
}
|
||||
|
||||
void Application::destructObserver(void)
|
||||
|
|
|
@ -1062,6 +1062,13 @@ void ParameterManager::Init(void)
|
|||
}
|
||||
}
|
||||
|
||||
void ParameterManager::Terminate(void)
|
||||
{
|
||||
StrXUTF8::terminate();
|
||||
XUTF8Str::terminate();
|
||||
XMLPlatformUtils::Terminate();
|
||||
}
|
||||
|
||||
//**************************************************************************
|
||||
// Document handling
|
||||
|
||||
|
|
|
@ -218,8 +218,6 @@ public:
|
|||
std::vector<std::pair<std::string,std::string> > GetASCIIMap(const char * sFilter = NULL) const;
|
||||
//@}
|
||||
|
||||
static void Init(void);
|
||||
|
||||
friend class ParameterManager;
|
||||
|
||||
/// returns the name
|
||||
|
@ -278,6 +276,7 @@ public:
|
|||
ParameterManager();
|
||||
~ParameterManager();
|
||||
static void Init(void);
|
||||
static void Terminate(void);
|
||||
|
||||
int LoadDocument(const char* sFileName);
|
||||
int LoadDocument(const XERCES_CPP_NAMESPACE_QUALIFIER InputSource&);
|
||||
|
|
|
@ -35,3 +35,12 @@ using namespace Base;
|
|||
std::auto_ptr<XERCES_CPP_NAMESPACE::XMLTranscoder> StrXUTF8::transcoder;
|
||||
std::auto_ptr<XERCES_CPP_NAMESPACE::XMLTranscoder> XUTF8Str::transcoder;
|
||||
|
||||
void StrXUTF8::terminate()
|
||||
{
|
||||
transcoder.reset();
|
||||
}
|
||||
|
||||
void XUTF8Str::terminate()
|
||||
{
|
||||
transcoder.reset();
|
||||
}
|
||||
|
|
|
@ -114,6 +114,8 @@ public :
|
|||
/// string which holds the UTF-8 form
|
||||
std::string str;
|
||||
|
||||
static void terminate();
|
||||
|
||||
private :
|
||||
static std::auto_ptr<XERCES_CPP_NAMESPACE::XMLTranscoder> transcoder;
|
||||
// This is the local code page form of the string.
|
||||
|
@ -231,6 +233,8 @@ public :
|
|||
/// Getter method
|
||||
const XMLCh* unicodeForm() const;
|
||||
|
||||
static void terminate();
|
||||
|
||||
private :
|
||||
std::basic_string<XMLCh> str;
|
||||
static std::auto_ptr<XERCES_CPP_NAMESPACE::XMLTranscoder> transcoder;
|
||||
|
|
Loading…
Reference in New Issue
Block a user