Added timestamp to debug functions (qDebug, qWarning, qFatal).

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
(cherry picked from commit 3ae061484d)
r14.0.x
Michele Calgaro 6 years ago
parent 2fd4dcbf56
commit d17480bf1d
Signed by: MicheleC
GPG Key ID: 2A75B7CA8ADED5CF

@ -41,6 +41,7 @@
#include "qplatformdefs.h" #include "qplatformdefs.h"
#include "qasciidict.h" #include "qasciidict.h"
#include <qdatetime.h>
#include <limits.h> #include <limits.h>
#include <stdio.h> #include <stdio.h>
#include <limits.h> #include <limits.h>
@ -464,42 +465,17 @@ static void mac_default_handler( const char *msg )
#endif #endif
void qDebug( const char *msg, ... ) void qDebug( const char *msg, ... )
{ {
char buf[QT_BUFFER_LENGTH]; char buf[QT_BUFFER_LENGTH];
strcpy( buf, QDateTime::currentDateTime().toString("[yyyy/MM/dd hh:mm:ss.zzz] ").ascii() );
int len = strlen(buf);
va_list ap; va_list ap;
va_start( ap, msg ); // use variable arg list va_start( ap, msg ); // use variable arg list
#if defined(QT_VSNPRINTF) #if defined(QT_VSNPRINTF)
QT_VSNPRINTF( buf, QT_BUFFER_LENGTH, msg, ap ); QT_VSNPRINTF( &buf[len], QT_BUFFER_LENGTH, msg, ap );
#else
vsprintf( buf, msg, ap );
#endif
va_end( ap );
if ( handler ) {
(*handler)( QtDebugMsg, buf );
} else {
#if defined(Q_CC_MWERKS)
mac_default_handler(buf);
#elif defined(Q_OS_TEMP)
QString fstr( buf );
OutputDebugString( (fstr + "\n").ucs2() );
#else
fprintf( stderr, "%s\n", buf ); // add newline
#endif
}
}
// copied... this looks really bad.
void debug( const char *msg, ... )
{
char buf[QT_BUFFER_LENGTH];
va_list ap;
va_start( ap, msg ); // use variable arg list
#if defined(QT_VSNPRINTF)
QT_VSNPRINTF( buf, QT_BUFFER_LENGTH, msg, ap );
#else #else
vsprintf( buf, msg, ap ); vsprintf( &buf[len], msg, ap );
#endif #endif
va_end( ap ); va_end( ap );
if ( handler ) { if ( handler ) {
@ -519,39 +495,14 @@ void debug( const char *msg, ... )
void qWarning( const char *msg, ... ) void qWarning( const char *msg, ... )
{ {
char buf[QT_BUFFER_LENGTH]; char buf[QT_BUFFER_LENGTH];
strcpy( buf, QDateTime::currentDateTime().toString("[yyyy/MM/dd hh:mm:ss.zzz] ").ascii() );
int len = strlen(buf);
va_list ap; va_list ap;
va_start( ap, msg ); // use variable arg list va_start( ap, msg ); // use variable arg list
#if defined(QT_VSNPRINTF) #if defined(QT_VSNPRINTF)
QT_VSNPRINTF( buf, QT_BUFFER_LENGTH, msg, ap ); QT_VSNPRINTF( &buf[len], QT_BUFFER_LENGTH, msg, ap );
#else
vsprintf( buf, msg, ap );
#endif
va_end( ap );
if ( handler ) {
(*handler)( QtWarningMsg, buf );
} else {
#if defined(Q_CC_MWERKS)
mac_default_handler(buf);
#elif defined(Q_OS_TEMP)
QString fstr( buf );
OutputDebugString( (fstr + "\n").ucs2() );
#else
fprintf( stderr, "%s\n", buf ); // add newline
#endif
}
}
// again, copied
void warning( const char *msg, ... )
{
char buf[QT_BUFFER_LENGTH];
va_list ap;
va_start( ap, msg ); // use variable arg list
#if defined(QT_VSNPRINTF)
QT_VSNPRINTF( buf, QT_BUFFER_LENGTH, msg, ap );
#else #else
vsprintf( buf, msg, ap ); vsprintf( &buf[len], msg, ap );
#endif #endif
va_end( ap ); va_end( ap );
if ( handler ) { if ( handler ) {
@ -571,46 +522,14 @@ void warning( const char *msg, ... )
void qFatal( const char *msg, ... ) void qFatal( const char *msg, ... )
{ {
char buf[QT_BUFFER_LENGTH]; char buf[QT_BUFFER_LENGTH];
strcpy( buf, QDateTime::currentDateTime().toString("[yyyy/MM/dd hh:mm:ss.zzz] ").ascii() );
int len = strlen(buf);
va_list ap; va_list ap;
va_start( ap, msg ); // use variable arg list va_start( ap, msg ); // use variable arg list
#if defined(QT_VSNPRINTF) #if defined(QT_VSNPRINTF)
QT_VSNPRINTF( buf, QT_BUFFER_LENGTH, msg, ap ); QT_VSNPRINTF( &buf[len], QT_BUFFER_LENGTH, msg, ap );
#else
vsprintf( buf, msg, ap );
#endif
va_end( ap );
if ( handler ) {
(*handler)( QtFatalMsg, buf );
} else {
#if defined(Q_CC_MWERKS)
mac_default_handler(buf);
#else
fprintf( stderr, "%s\n", buf ); // add newline
#endif
#if defined(Q_OS_UNIX) && defined(QT_DEBUG)
abort(); // trap; generates core dump
#elif defined(Q_OS_TEMP) && defined(QT_DEBUG)
QString fstr;
fstr.sprintf( "%s:%s %s %s\n", __FILE__, __LINE__, QT_VERSION_STR, buf );
OutputDebugString( fstr.ucs2() );
#elif defined(_CRT_ERROR) && defined(_DEBUG)
_CrtDbgReport( _CRT_ERROR, __FILE__, __LINE__, QT_VERSION_STR, buf );
#else
exit( 1 ); // goodbye cruel world
#endif
}
}
// yet again, copied
void fatal( const char *msg, ... )
{
char buf[QT_BUFFER_LENGTH];
va_list ap;
va_start( ap, msg ); // use variable arg list
#if defined(QT_VSNPRINTF)
QT_VSNPRINTF( buf, QT_BUFFER_LENGTH, msg, ap );
#else #else
vsprintf( buf, msg, ap ); vsprintf( &buf[len], msg, ap );
#endif #endif
va_end( ap ); va_end( ap );
if ( handler ) { if ( handler ) {

Loading…
Cancel
Save