OSDN Git Service

analyzer: code cosmetics
authorhjk <qtc-committer@nokia.com>
Fri, 5 Aug 2011 16:03:37 +0000 (18:03 +0200)
committerhjk <qthjk@ovi.com>
Wed, 17 Aug 2011 08:48:34 +0000 (10:48 +0200)
Change-Id: Id00cf1be9d07e47f7b61b8cc7e940629c84a48c1
Reviewed-on: http://codereview.qt.nokia.com/2707
Reviewed-by: hjk <qthjk@ovi.com>
src/plugins/valgrind/memcheckerrorview.cpp
src/plugins/valgrind/memcheckerrorview.h
src/plugins/valgrind/xmlprotocol/errorlistmodel.cpp
src/plugins/valgrind/xmlprotocol/errorlistmodel.h
src/plugins/valgrind/xmlprotocol/parser.cpp
src/plugins/valgrind/xmlprotocol/stack.cpp
src/plugins/valgrind/xmlprotocol/stack.h

index 31fcd88..daf6fdc 100644 (file)
 #include "xmlprotocol/modelhelpers.h"
 #include "xmlprotocol/suppression.h"
 
-#include <texteditor/basetexteditor.h>
-
+#include <coreplugin/coreconstants.h>
 #include <projectexplorer/projectexplorer.h>
 #include <projectexplorer/project.h>
-#include <coreplugin/coreconstants.h>
-
+#include <texteditor/basetexteditor.h>
 #include <utils/qtcassert.h>
 
 #include <QtCore/QDir>
 #include <QtCore/QDebug>
 
+#include <QtGui/QAction>
+#include <QtGui/QApplication>
+#include <QtGui/QClipboard>
 #include <QtGui/QLabel>
 #include <QtGui/QListView>
+#include <QtGui/QMenu>
 #include <QtGui/QPainter>
 #include <QtGui/QScrollBar>
 #include <QtGui/QSortFilterProxyModel>
+#include <QtGui/QStyledItemDelegate>
 #include <QtGui/QVBoxLayout>
-#include <QtGui/QAction>
-#include <QtGui/QClipboard>
-#include <QtGui/QApplication>
-#include <QtGui/QMenu>
 
 using namespace Valgrind::XmlProtocol;
 
 namespace Valgrind {
 namespace Internal {
 
+class MemcheckErrorDelegate : public QStyledItemDelegate
+{
+    Q_OBJECT
+
+public:
+    /// This delegate can only work on one view at a time, parent. parent will also be the parent
+    /// in the QObject parent-child system.
+    explicit MemcheckErrorDelegate(QListView *parent);
+
+    QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const;
+    void paint(QPainter *painter, const QStyleOptionViewItem &option,
+               const QModelIndex &index) const;
+
+public slots:
+    void currentChanged(const QModelIndex &now, const QModelIndex &previous);
+    void viewResized();
+    void layoutChanged();
+    void copy();
+
+private slots:
+    void verticalScrolled();
+    void openLinkInEditor(const QString &link);
+
+private:
+    // the constness of this method is a necessary lie because it is called from paint() const.
+    QWidget *createDetailsWidget(const QModelIndex &errorIndex, QWidget *parent) const;
+
+    static const int s_itemMargin = 2;
+    mutable QPersistentModelIndex m_detailsIndex;
+    mutable QWidget *m_detailsWidget;
+    mutable int m_detailsWidgetHeight;
+};
+
 MemcheckErrorDelegate::MemcheckErrorDelegate(QListView *parent)
     : QStyledItemDelegate(parent),
       m_detailsWidget(0)
@@ -84,8 +116,7 @@ QSize MemcheckErrorDelegate::sizeHint(const QStyleOptionViewItem &opt, const QMo
     const QListView *view = qobject_cast<const QListView *>(parent());
     const int viewportWidth = view->viewport()->width();
     const bool isSelected = view->selectionModel()->currentIndex() == index;
-
-    int dy = 2 * s_itemMargin;
+    const int dy = 2 * s_itemMargin;
 
     if (!isSelected) {
         QFontMetrics fm(opt.font);
@@ -153,20 +184,20 @@ static QString makeFrameName(const Frame &frame, const QString &relativeTo,
     return QString("0x%1").arg(frame.instructionPointer(), 0, 16);
 }
 
-QString relativeToPath()
+static QString relativeToPath()
 {
-    // project for which we insert the snippet
+    // The project for which we insert the snippet.
     const ProjectExplorer::Project *project =
             ProjectExplorer::ProjectExplorerPlugin::instance()->startupProject();
 
-    QString relativeTo( project ? project->projectDirectory() : QDir::homePath() );
+    QString relativeTo(project ? project->projectDirectory() : QDir::homePath());
     if (!relativeTo.endsWith(QDir::separator()))
         relativeTo.append(QDir::separator());
 
     return relativeTo;
 }
 
-QString errorLocation(const QModelIndex &index, const Error &error,
+static QString errorLocation(const QModelIndex &index, const Error &error,
                       bool link = false, const QString &linkAttr = QString())
 {
     const ErrorListModel *model = 0;
@@ -190,9 +221,7 @@ QWidget *MemcheckErrorDelegate::createDetailsWidget(const QModelIndex &errorInde
     // don't include frameName here as it should wrap if required and pre-line is not supported
     // by Qt yet it seems
     const QString displayTextTemplate = QString("<code style='white-space:pre'>%1:</code> %2");
-
-    QString relativeTo = relativeToPath();
-
+    const QString relativeTo = relativeToPath();
     const Error error = errorIndex.data(ErrorListModel::ErrorRole).value<Error>();
 
     QLabel *errorLabel = new QLabel();
@@ -541,3 +570,5 @@ void MemcheckErrorView::setCurrentRow(int row)
 
 } // namespace Internal
 } // namespace Valgrind
+
+#include "memcheckerrorview.moc"
index f64bc5b..46c8176 100644 (file)
 #define MEMCHECKERRORVIEW_H
 
 #include <QtGui/QListView>
-#include <QtGui/QStyledItemDelegate>
-#include <QtGui/QLabel>
 
 namespace Analyzer {
 class AnalyzerSettings;
 }
 
-namespace ProjectExplorer {
-class Project;
-}
-
 namespace Valgrind {
 namespace Internal {
 
-class MemcheckErrorDelegate : public QStyledItemDelegate
-{
-    Q_OBJECT
-
-public:
-    /// This delegate can only work on one view at a time, parent. parent will also be the parent
-    /// in the QObject parent-child system.
-    explicit MemcheckErrorDelegate(QListView *parent);
-
-    virtual QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const;
-    virtual void paint(QPainter *painter, const QStyleOptionViewItem &option,
-                       const QModelIndex &index) const;
-
-public slots:
-    void currentChanged(const QModelIndex &now, const QModelIndex &previous);
-    void viewResized();
-    void layoutChanged();
-    void copy();
-
-private slots:
-    void verticalScrolled();
-    void openLinkInEditor(const QString &link);
-
-private:
-    // the constness of this method is a necessary lie because it is called from paint() const.
-    QWidget *createDetailsWidget(const QModelIndex &errorIndex, QWidget *parent) const;
-
-    static const int s_itemMargin = 2;
-    mutable QPersistentModelIndex m_detailsIndex;
-    mutable QWidget *m_detailsWidget;
-    mutable int m_detailsWidgetHeight;
-};
-
 class MemcheckErrorView : public QListView
 {
     Q_OBJECT
index 08794bd..cd731b3 100644 (file)
@@ -137,17 +137,23 @@ QString ErrorListModel::Private::formatLocation(const Error &error) const
 
 QVariant ErrorListModel::Private::errorData(int row, int column, int role) const
 {
+    // A dummy entry.
+    if (row == 0 && errors.isEmpty()) {
+        if (role == Qt::DisplayRole)
+            return tr("No errors found");
+        if (role == ErrorRole)
+            return tr("No errors found");
+        return QVariant();
+    }
+
     if (row < 0 || row >= errors.size())
         return QVariant();
-    const Error &error = errors[row];
 
-    const QVector<Stack> stacks = error.stacks();
-    const Stack stack = !stacks.isEmpty() ? stacks.first() : Stack();
+    const Error &error = errors.at(row);
 
     if (error.stacks().count())
     switch (role) {
-    case Qt::DisplayRole:
-    {
+    case Qt::DisplayRole: {
         switch (column) {
         case WhatColumn:
             return error.what();
@@ -155,8 +161,7 @@ QVariant ErrorListModel::Private::errorData(int row, int column, int role) const
             return formatLocation(error);
         case AbsoluteFilePathColumn:
             return formatAbsoluteFilePath(error);
-        case LineColumn:
-        {
+        case LineColumn: {
             const qint64 line = findRelevantFrame(error).line();
             return line > 0 ? line : QVariant();
         }
@@ -177,17 +182,14 @@ QVariant ErrorListModel::Private::errorData(int row, int column, int role) const
         }
     }
     case Qt::ToolTipRole:
-    {
         return toolTipForFrame(findRelevantFrame(error));
-    }
     case ErrorRole:
         return QVariant::fromValue<Error>(error);
     case AbsoluteFilePathRole:
         return formatAbsoluteFilePath(error);
     case FileRole:
         return findRelevantFrame(error).file();
-    case LineRole:
-    {
+    case LineRole: {
         const qint64 line = findRelevantFrame(error).line();
         return line > 0 ? line : QVariant();
     }
@@ -200,8 +202,6 @@ QVariant ErrorListModel::data(const QModelIndex &index, int role) const
     if (!index.isValid())
         return QVariant();
 
-    QTC_ASSERT(index.model() == this, return QVariant());
-
     if (!index.parent().isValid())
         return d->errorData(index.row(), index.column(), role);
 
@@ -241,13 +241,9 @@ QVariant ErrorListModel::headerData(int section, Qt::Orientation orientation, in
 
 int ErrorListModel::rowCount(const QModelIndex &parent) const
 {
-    //root
-    if (!parent.isValid())
-        return d->errors.count();
-
-    QTC_ASSERT(parent.model() == this, return 0);
-
-    return 0;
+    if (parent.isValid())
+        return 0;
+    return qMax(1, d->errors.count());
 }
 
 int ErrorListModel::columnCount(const QModelIndex &parent) const
@@ -286,7 +282,7 @@ Error ErrorListModel::error(const QModelIndex &index) const
     const int r = index.row();
     if (r < 0 || r >= d->errors.size())
         return Error();
-    return d->errors[r];
+    return d->errors.at(r);
 }
 
 void ErrorListModel::clear()
index fe758ed..388f50c 100644 (file)
@@ -47,9 +47,10 @@ class Frame;
 class ErrorListModel : public QAbstractItemModel
 {
     Q_OBJECT
+
 public:
     enum Column {
-        WhatColumn=0,
+        WhatColumn = 0,
         LocationColumn,
         AbsoluteFilePathColumn,
         LineColumn,
@@ -63,7 +64,7 @@ public:
     };
 
     enum Role {
-        ErrorRole=Qt::UserRole,
+        ErrorRole = Qt::UserRole,
         AbsoluteFilePathRole,
         FileRole,
         LineRole
@@ -96,7 +97,7 @@ public:
 
     void clear();
 
-public Q_SLOTS:
+public slots:
     void addError(const Valgrind::XmlProtocol::Error &error);
 
 private:
index 6d602c9..ca7edcd 100644 (file)
@@ -94,21 +94,22 @@ namespace XmlProtocol {
 
 class Parser::Private
 {
-    Parser *const q;
 public:
     explicit Private(Parser *qq);
 
     void parse(QIODevice *device);
+    QString errorString;
 
-    void parse_error();
+private:
+    void parseError();
     QVector<Frame> parseStack();
     Suppression parseSuppression();
     SuppressionFrame parseSuppressionFrame();
-    Frame parse_frame();
-    void parse_status();
-    void parse_errorcounts();
-    void parse_suppcounts();
-    void parse_announcethread();
+    Frame parseFrame();
+    void parseStatus();
+    void parseErrorCounts();
+    void parseSuppressionCounts();
+    void parseAnnounceThread();
     void checkProtocolVersion(const QString &versionStr);
     void checkTool(const QString &tool);
     XWhat parseXWhat();
@@ -124,12 +125,14 @@ public:
     QString blockingReadElementText();
 
     Tool tool;
-    QString errorString;
     QXmlStreamReader reader;
-    QHash<QString,MemcheckErrorKind> errorKindsByName_memcheck;
-    QHash<QString,HelgrindErrorKind> errorKindsByName_helgrind;
-    QHash<QString,PtrcheckErrorKind> errorKindsByName_ptrcheck;
-    QHash<QString,Parser::Tool> toolsByName;
+    QHash<QString, MemcheckErrorKind> errorKindsByName_memcheck;
+    QHash<QString, HelgrindErrorKind> errorKindsByName_helgrind;
+    QHash<QString, PtrcheckErrorKind> errorKindsByName_ptrcheck;
+    QHash<QString, Parser::Tool> toolsByName;
+
+private:
+    Parser *const q;
 };
 
 #undef ADD_ENUM
@@ -137,9 +140,9 @@ public:
 
 
 Parser::Private::Private(Parser *qq)
-    : q(qq),
-      tool(Parser::Unknown)
+    : q(qq)
 {
+    tool = Parser::Unknown;
     toolsByName.insert(QLatin1String("memcheck"), Parser::Memcheck);
     toolsByName.insert(QLatin1String("ptrcheck"), Parser::Ptrcheck);
     toolsByName.insert(QLatin1String("exp-ptrcheck"), Parser::Ptrcheck);
@@ -311,13 +314,14 @@ XWhat Parser::Private::parseXWhat()
         blockingReadNext();
         if (reader.isEndElement())
             break;
-        if (reader.name() == QLatin1String("text"))
+        const QStringRef name = reader.name();
+        if (name == QLatin1String("text"))
             what.text = blockingReadElementText();
-        else if (reader.name() == QLatin1String("leakedbytes"))
+        else if (name == QLatin1String("leakedbytes"))
             what.leakedbytes = parseInt64(blockingReadElementText(), QLatin1String("error/xwhat[memcheck]/leakedbytes"));
-        else if (reader.name() == QLatin1String("leakedblocks"))
+        else if (name == QLatin1String("leakedblocks"))
             what.leakedblocks = parseInt64(blockingReadElementText(), QLatin1String("error/xwhat[memcheck]/leakedblocks"));
-        else if (reader.name() == QLatin1String("hthreadid"))
+        else if (name == QLatin1String("hthreadid"))
             what.hthreadid = parseInt64(blockingReadElementText(), QLatin1String("error/xwhat[memcheck]/hthreadid"));
         else if (reader.isStartElement())
             reader.skipCurrentElement();
@@ -332,15 +336,16 @@ XauxWhat Parser::Private::parseXauxWhat()
         blockingReadNext();
         if (reader.isEndElement())
             break;
-        if (reader.name() == QLatin1String("text"))
+        const QStringRef name = reader.name();
+        if (name == QLatin1String("text"))
             what.text = blockingReadElementText();
-        else if (reader.name() == QLatin1String("file"))
+        else if (name == QLatin1String("file"))
             what.file = blockingReadElementText();
-        else if (reader.name() == QLatin1String("dir"))
+        else if (name == QLatin1String("dir"))
             what.dir = blockingReadElementText();
-        else if (reader.name() == QLatin1String("line"))
+        else if (name == QLatin1String("line"))
             what.line = parseInt64(blockingReadElementText(), QLatin1String("error/xauxwhat/line"));
-        else if (reader.name() == QLatin1String("hthreadid"))
+        else if (name == QLatin1String("hthreadid"))
             what.hthreadid = parseInt64(blockingReadElementText(), QLatin1String("error/xauxwhat/hthreadid"));
         else if (reader.isStartElement())
             reader.skipCurrentElement();
@@ -425,7 +430,7 @@ static Stack makeStack(const XauxWhat &xauxwhat, const QVector<Frame> &frames)
     return s;
 }
 
-void Parser::Private::parse_error()
+void Parser::Private::parseError()
 {
     Error e;
     QVector<QVector<Frame> > frames;
@@ -439,29 +444,30 @@ void Parser::Private::parse_error()
             break;
         if (reader.isStartElement())
             lastAuxWhat++;
-        if (reader.name() == QLatin1String("unique"))
+        const QStringRef name = reader.name();
+        if (name == QLatin1String("unique"))
             e.setUnique(parseHex(blockingReadElementText(), QLatin1String("unique")));
-        else if ( reader.name() == QLatin1String("tid"))
+        else if (name == QLatin1String("tid"))
             e.setTid(parseInt64(blockingReadElementText(), QLatin1String("error/tid")));
-        else if (reader.name() == QLatin1String("kind")) //TODO this is memcheck-specific:
+        else if (name == QLatin1String("kind")) //TODO this is memcheck-specific:
             e.setKind(parseErrorKind(blockingReadElementText()));
-        else if (reader.name() == QLatin1String("suppression"))
+        else if (name == QLatin1String("suppression"))
             e.setSuppression(parseSuppression());
-        else if (reader.name() == QLatin1String("xwhat")) {
+        else if (name == QLatin1String("xwhat")) {
             const XWhat xw = parseXWhat();
             e.setWhat(xw.text);
             e.setLeakedBlocks(xw.leakedblocks);
             e.setLeakedBytes(xw.leakedbytes);
             e.setHelgrindThreadId(xw.hthreadid);
         }
-        else if (reader.name() == QLatin1String("what"))
+        else if (name == QLatin1String("what"))
             e.setWhat(blockingReadElementText());
-        else if (reader.name() == QLatin1String("xauxwhat")) {
+        else if (name == QLatin1String("xauxwhat")) {
             if (!currentAux.text.isEmpty())
                 auxs.push_back(currentAux);
             currentAux = parseXauxWhat();
         }
-        else if (reader.name() == QLatin1String("auxwhat")) {
+        else if (name == QLatin1String("auxwhat")) {
             const QString aux = blockingReadElementText();
             //concatenate multiple consecutive <auxwhat> tags
             if (lastAuxWhat > 1) {
@@ -476,7 +482,7 @@ void Parser::Private::parse_error()
             }
             lastAuxWhat = 0;
         }
-        else if (reader.name() == QLatin1String("stack")) {
+        else if (name == QLatin1String("stack")) {
             frames.push_back(parseStack());
         }
         else if (reader.isStartElement())
@@ -499,7 +505,7 @@ void Parser::Private::parse_error()
     emit q->error(e);
 }
 
-Frame Parser::Private::parse_frame()
+Frame Parser::Private::parseFrame()
 {
     Frame frame;
 
@@ -508,17 +514,18 @@ Frame Parser::Private::parse_frame()
         if (reader.isEndElement())
             break;
         if (reader.isStartElement()) {
-            if (reader.name() == QLatin1String("ip"))
+            const QStringRef name = reader.name();
+            if (name == QLatin1String("ip"))
                 frame.setInstructionPointer(parseHex(blockingReadElementText(), QLatin1String("error/frame/ip")));
-            else if (reader.name() == QLatin1String("obj"))
+            else if (name == QLatin1String("obj"))
                 frame.setObject(blockingReadElementText());
-            else if (reader.name() == QLatin1String("fn"))
+            else if (name == QLatin1String("fn"))
                 frame.setFunctionName( blockingReadElementText());
-            else if (reader.name() == QLatin1String("dir"))
+            else if (name == QLatin1String("dir"))
                 frame.setDirectory(blockingReadElementText());
-            else if (reader.name() == QLatin1String("file"))
+            else if (name == QLatin1String("file"))
                 frame.setFile( blockingReadElementText());
-            else if (reader.name() == QLatin1String("line"))
+            else if (name == QLatin1String("line"))
                 frame.setLine(parseInt64(blockingReadElementText(), QLatin1String("error/frame/line")));
             else if (reader.isStartElement())
                 reader.skipCurrentElement();
@@ -528,7 +535,7 @@ Frame Parser::Private::parse_frame()
     return frame;
 }
 
-void Parser::Private::parse_announcethread()
+void Parser::Private::parseAnnounceThread()
 {
     AnnounceThread at;
 
@@ -537,9 +544,10 @@ void Parser::Private::parse_announcethread()
         if (reader.isEndElement())
             break;
         if (reader.isStartElement()) {
-            if (reader.name() == QLatin1String("hthreadid"))
+            const QStringRef name = reader.name();
+            if (name == QLatin1String("hthreadid"))
                 at.setHelgrindThreadId(parseInt64(blockingReadElementText(), QLatin1String("announcethread/hthreadid")));
-            else if (reader.name() == QLatin1String("stack"))
+            else if (name == QLatin1String("stack"))
                 at.setStack(parseStack());
             else if (reader.isStartElement())
                 reader.skipCurrentElement();
@@ -549,7 +557,7 @@ void Parser::Private::parse_announcethread()
     emit q->announceThread(at);
 }
 
-void Parser::Private::parse_errorcounts()
+void Parser::Private::parseErrorCounts()
 {
     while (notAtEnd()) {
         blockingReadNext();
@@ -564,9 +572,10 @@ void Parser::Private::parse_errorcounts()
                     if (reader.isEndElement())
                         break;
                     if (reader.isStartElement()) {
-                        if (reader.name() == QLatin1String("unique"))
+                        const QStringRef name = reader.name();
+                        if (name == QLatin1String("unique"))
                             unique = parseHex(blockingReadElementText(), QLatin1String("errorcounts/pair/unique"));
-                        else if (reader.name() == QLatin1String("count"))
+                        else if (name == QLatin1String("count"))
                             count = parseInt64(blockingReadElementText(), QLatin1String("errorcounts/pair/count"));
                         else if (reader.isStartElement())
                             reader.skipCurrentElement();
@@ -581,7 +590,7 @@ void Parser::Private::parse_errorcounts()
 }
 
 
-void Parser::Private::parse_suppcounts()
+void Parser::Private::parseSuppressionCounts()
 {
     while (notAtEnd()) {
         blockingReadNext();
@@ -589,22 +598,23 @@ void Parser::Private::parse_suppcounts()
             break;
         if (reader.isStartElement()) {
             if (reader.name() == QLatin1String("pair")) {
-                QString name;
+                QString pairName;
                 qint64 count = 0;
                 while (notAtEnd()) {
                     blockingReadNext();
                     if (reader.isEndElement())
                         break;
                     if (reader.isStartElement()) {
-                        if (reader.name() == QLatin1String("name"))
-                            name = blockingReadElementText();
-                        else if (reader.name() == QLatin1String("count"))
+                        const QStringRef name = reader.name();
+                        if (name == QLatin1String("name"))
+                            pairName = blockingReadElementText();
+                        else if (name == QLatin1String("count"))
                             count = parseInt64(blockingReadElementText(), QLatin1String("suppcounts/pair/count"));
                         else if (reader.isStartElement())
                             reader.skipCurrentElement();
                     }
                 }
-                emit q->suppressionCount(name, count);
+                emit q->suppressionCount(pairName, count);
             }
             else if (reader.isStartElement())
                 reader.skipCurrentElement();
@@ -612,7 +622,7 @@ void Parser::Private::parse_suppcounts()
     }
 }
 
-void Parser::Private::parse_status()
+void Parser::Private::parseStatus()
 {
     Status s;
 
@@ -621,9 +631,10 @@ void Parser::Private::parse_status()
         if (reader.isEndElement())
             break;
         if (reader.isStartElement()) {
-            if (reader.name() == QLatin1String("state"))
+            const QStringRef name = reader.name();
+            if (name == QLatin1String("state"))
                 s.setState(parseState(blockingReadElementText()));
-            else if (reader.name() == QLatin1String("time"))
+            else if (name == QLatin1String("time"))
                 s.setTime(blockingReadElementText());
             else if (reader.isStartElement())
                 reader.skipCurrentElement();
@@ -642,7 +653,7 @@ QVector<Frame> Parser::Private::parseStack()
             break;
         if (reader.isStartElement()) {
             if (reader.name() == QLatin1String("frame"))
-                frames.append(parse_frame());
+                frames.append(parseFrame());
         }
     }
 
@@ -658,9 +669,10 @@ SuppressionFrame Parser::Private::parseSuppressionFrame()
         if (reader.isEndElement())
             break;
         if (reader.isStartElement()) {
-            if (reader.name() == QLatin1String("obj"))
+            const QStringRef name = reader.name();
+            if (name == QLatin1String("obj"))
                 frame.setObject(blockingReadElementText());
-            else if (reader.name() == QLatin1String("fun"))
+            else if (name == QLatin1String("fun"))
                 frame.setFunction( blockingReadElementText());
             else if (reader.isStartElement())
                 reader.skipCurrentElement();
@@ -679,15 +691,16 @@ Suppression Parser::Private::parseSuppression()
         if (reader.isEndElement())
             break;
         if (reader.isStartElement()) {
-            if (reader.name() == QLatin1String("sname"))
+            const QStringRef name = reader.name();
+            if (name == QLatin1String("sname"))
                 supp.setName(blockingReadElementText());
-            else if (reader.name() == QLatin1String("skind"))
+            else if (name == QLatin1String("skind"))
                 supp.setKind(blockingReadElementText());
-            else if (reader.name() == QLatin1String("skaux"))
+            else if (name == QLatin1String("skaux"))
                 supp.setAuxKind(blockingReadElementText());
-            else if (reader.name() == QLatin1String("rawtext"))
+            else if (name == QLatin1String("rawtext"))
                 supp.setRawText(blockingReadElementText());
-            else if (reader.name() == QLatin1String("sframe"))
+            else if (name == QLatin1String("sframe"))
                 frames.push_back(parseSuppressionFrame());
         }
     }
@@ -704,19 +717,20 @@ void Parser::Private::parse(QIODevice *device)
     try {
         while (notAtEnd()) {
             blockingReadNext();
-            if (reader.name() == QLatin1String("error"))
-                parse_error();
-            else if (reader.name() == QLatin1String("announcethread"))
-                parse_announcethread();
-            else if (reader.name() == QLatin1String("status"))
-                parse_status();
-            else if (reader.name() == QLatin1String("errorcounts"))
-                parse_errorcounts();
-            else if (reader.name() == QLatin1String("suppcounts"))
-                parse_suppcounts();
-            else if (reader.name() == QLatin1String("protocolversion"))
+            QStringRef name = reader.name();
+            if (name == QLatin1String("error"))
+                parseError();
+            else if (name == QLatin1String("announcethread"))
+                parseAnnounceThread();
+            else if (name == QLatin1String("status"))
+                parseStatus();
+            else if (name == QLatin1String("errorcounts"))
+                parseErrorCounts();
+            else if (name == QLatin1String("suppcounts"))
+                parseSuppressionCounts();
+            else if (name == QLatin1String("protocolversion"))
                 checkProtocolVersion(blockingReadElementText());
-            else if (reader.name() == QLatin1String("protocoltool"))
+            else if (name == QLatin1String("protocoltool"))
                 checkTool(blockingReadElementText());
         }
     } catch (const ParserException &e) {
index 8c2de28..2c47e42 100644 (file)
@@ -39,8 +39,6 @@
 #include <QtCore/QString>
 #include <QtCore/QVector>
 
-#include <algorithm>
-
 namespace Valgrind {
 namespace XmlProtocol {
 
@@ -80,11 +78,10 @@ void Stack::swap(Stack &other)
     qSwap(d, other.d);
 }
 
-Stack &Stack::operator=(const Stack &other)
+void Stack::operator=(const Stack &other)
 {
     Stack tmp(other);
     swap(tmp);
-    return *this;
 }
 
 bool Stack::operator==(const Stack &other) const
index 7233000..09d4c54 100644 (file)
@@ -32,8 +32,8 @@
 **
 **************************************************************************/
 
-#ifndef LIBVALGRIND_PROTOCOL_STACK_H
-#define LIBVALGRIND_PROTOCOL_STACK_H
+#ifndef VALGRIND_PROTOCOL_STACK_H
+#define VALGRIND_PROTOCOL_STACK_H
 
 #include <QtCore/QSharedDataPointer>
 
@@ -52,7 +52,7 @@ public:
     Stack();
     Stack(const Stack &other);
     ~Stack();
-    Stack &operator=(const Stack &other);
+    void operator=(const Stack &other);
     void swap(Stack &other);
     bool operator==(const Stack &other) const;
 
@@ -84,4 +84,4 @@ private:
 } // namespace XmlProtocol
 } // namespace Stack
 
-#endif // LIBVALGRIND_PROTOCOL_STACK_H
+#endif // VALGRIND_PROTOCOL_STACK_H