From 297be273a34b33cf19af0fb2d2bec6df8d3809b6 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Tue, 29 Apr 2014 12:39:31 +0200 Subject: De-inline QDebug destructor This injected quite some code on every use of qDebug and friends, while not giving any measurable performance benefits. Change-Id: I7b51f99130f18f1252da01e313f7b97c43a5480d Reviewed-by: Orgad Shaneh Reviewed-by: Thiago Macieira --- src/corelib/io/qdebug.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/corelib/io/qdebug.cpp') diff --git a/src/corelib/io/qdebug.cpp b/src/corelib/io/qdebug.cpp index 79038e9138..44d0a788ff 100644 --- a/src/corelib/io/qdebug.cpp +++ b/src/corelib/io/qdebug.cpp @@ -128,6 +128,20 @@ QT_BEGIN_NAMESPACE Flushes any pending data to be written and destroys the debug stream. */ +// Has been defined in the header / inlined before Qt 5.4 +QDebug::~QDebug() +{ + if (!--stream->ref) { + if (stream->space && stream->buffer.endsWith(QLatin1Char(' '))) + stream->buffer.chop(1); + if (stream->message_output) { + qt_message_output(stream->type, + stream->context, + stream->buffer); + } + delete stream; + } +} /*! \fn QDebug::swap(QDebug &other) -- cgit v1.2.3