summaryrefslogtreecommitdiff
path: root/libopie2/opiecore/oglobal.cpp
Side-by-side diff
Diffstat (limited to 'libopie2/opiecore/oglobal.cpp') (more/less context) (show whitespace changes)
-rw-r--r--libopie2/opiecore/oglobal.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/libopie2/opiecore/oglobal.cpp b/libopie2/opiecore/oglobal.cpp
index ea02058..2968a7d 100644
--- a/libopie2/opiecore/oglobal.cpp
+++ b/libopie2/opiecore/oglobal.cpp
@@ -67,29 +67,38 @@ static char Base64DecMap[128] =
0x0F, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
0x17, 0x18, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x20,
0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28,
0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F, 0x30,
0x31, 0x32, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00
};
OConfig* OGlobal::_config = 0;
OConfig* OGlobal::_qpe_config = 0;
+void OGlobal::clean_up() {
+ qWarning( "Oglobal clean up" );
+ delete OGlobal::_config;
+ delete OGlobal::_qpe_config;
+ OGlobal::_config = 0;
+ OGlobal::_qpe_config = 0;
+}
+
OConfig* OGlobal::config()
{
if ( !OGlobal::_config )
{
// odebug classes are reading config, so can't use them here!
+ qAddPostRoutine( OGlobal::clean_up );
qDebug( "OGlobal::creating global configuration instance." );
OGlobal::_config = new OConfig( "global" );
}
return OGlobal::_config;
}
/**
* Return the internal builtin Global::Command object
*
*/
Global::Command* OGlobal::builtinCommands() {