summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--libopie2/opiecore/odebug.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/libopie2/opiecore/odebug.cpp b/libopie2/opiecore/odebug.cpp
index b4eaf2d..b2a37bc 100644
--- a/libopie2/opiecore/odebug.cpp
+++ b/libopie2/opiecore/odebug.cpp
@@ -95,65 +95,69 @@ enum DebugLevels {
/*======================================================================================
* the main debug function
*======================================================================================*/
static void oDebugBackend( unsigned short level, unsigned int area, const char *data)
{
//qDebug( "oDebugBackend: Level=%d, Area=%d, Data=%s", level, area, data );
// ML: OPIE doesn't use areacodes at the moment. See the KDE debug classes for an
// ML: example use. I think it's not necessary to implement such a strategy here.
// ML: Comments?
int priority = 0;
QString caption;
QString lev;
switch( level )
{
case ODEBUG_INFO: lev = "(Info)"; caption = "Info"; priority = LOG_INFO; break;
case ODEBUG_WARN: lev = "(Warn)"; caption = "Warning"; priority = LOG_WARNING; break;
case ODEBUG_FATAL: lev = "(Fatal)"; caption = "Fatal Error"; priority = LOG_CRIT; break;
default: qDebug( "oDebugBackend: Warning: Unknown debug level! - defaulting to ODEBUG_ERROR." );
case ODEBUG_ERROR: lev = "(Error)"; caption = "Error"; priority = LOG_ERR; break;
}
short output = OGlobalSettings::debugMode();
if (!oApp && (output == 1))
{
qDebug( "oDebugBackend: Warning: no oapplication object - can't use MsgBox" );
output = 2; // need an application object to use MsgBox
}
- QString areaName = (oApp) ? oApp->appName() : "<unknown>";
+ // gcc 2.9x is dumb and sucks... can you hear it?
+ //QString areaName = (oApp) ? oApp->appName() : "<unknown>";
+ QString areaName;
+ if ( oApp ) areaName = oApp->appName();
+ else areaName = "<unknown>";
// Output
switch( output )
{
case -1: // ignore
{
return;
}
case 0: // File
{
QString outputFilename = OGlobalSettings::debugOutput();
const int BUFSIZE = 4096;
char buf[BUFSIZE] = "";
buf[BUFSIZE-1] = '\0';
int nSize;
nSize = snprintf( buf, BUFSIZE-1, "%s: %s", (const char*) areaName, data);
QFile outputFile( outputFilename );
if ( outputFile.open( IO_WriteOnly | IO_Append ) )
{
if ( ( nSize == -1 ) || ( nSize >= BUFSIZE ) )
{
outputFile.writeBlock( buf, BUFSIZE-1 );
}
else
{
outputFile.writeBlock( buf, nSize );
}
}
else