[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/3.5/kdewebdev/quanta
From: Andras Mantia <amantia () kde ! org>
Date: 2007-10-04 9:05:18
Message-ID: 1191488718.086357.27131.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 720995 by amantia:
Make the parser as fast as it was in 3.5.6 and before, but keep the double deletion \
checks.
M +1 -0 ChangeLog
M +17 -16 parsers/node.cpp
M +2 -2 parsers/parser.cpp
--- branches/KDE/3.5/kdewebdev/quanta/ChangeLog #720994:720995
@@ -7,6 +7,7 @@
- do not lose CSS selectors after editing inside the dialog if they are
repeated [#145413]
- avoid crashes in various (random) cases
+ - make the parser as fast as it was in 3.5.6 and before
Version 3.5.7 (Release date: xx-xx-2006; Started 06-02-2006)
--- branches/KDE/3.5/kdewebdev/quanta/parsers/node.cpp #720994:720995
@@ -27,7 +27,7 @@
#include "structtreetag.h"
#include "kafkacommon.h"
-QValueList<Node*> nodes; //list of all created nodes. Used to do some own memory \
management and avoid double deletes, for whatever reason they happen... +QMap<Node*, \
int> nodes; //list of all created nodes. Used to do some own memory management and \
avoid double deletes, for whatever reason they happen...
int NN = 0; //for debugging purposes: count the Node objects
@@ -48,19 +48,21 @@
m_leafNode = 0L;
m_groupElements.clear();
NN++;
- if (nodes.contains(this) == 0)
- nodes.append(this);
- else
- {
- kdError(24000) << "A node with this address " << this << " already exists!" << \
endl;
- }
+// if (nodes.contains(this) == 0)
+ nodes[this] = 1;
+// else
+// {
+// kdError(24000) << "A node with this address " << this << " already exists!" \
<< endl; +// }
}
bool Node::deleteNode(Node *node)
{
- if (nodes.contains(node) == 0)
+ if (!node)
+ return true;
+ if (!nodes.contains(node))
{
- //kdDebug(24000) << "Trying to delete a node with address " << node << " that \
was not allocated!" << endl; + kdDebug(24000) << "Trying to delete a node with \
address " << node << " that was not allocated!" << endl; return false;
}
delete node;
@@ -69,11 +71,11 @@
Node::~Node()
{
- if (nodes.contains(this) == 0)
- {
- kdError(24000) << "No node with this address " << this << " was allocated!" << \
endl;
- return;
- }
+// if (!nodes.contains(this))
+// {
+// kdError(24000) << "No node with this address " << this << " was allocated!" \
<< endl; +// return;
+// }
//It has no use, except to know when it crash why it has crashed.
//If it has crashed here, the Node doesn't exist anymore.
@@ -84,8 +86,7 @@
tag->setCleanStrBuilt(false);
detachNode();
- if (nodes.contains(this) > 0)
- nodes.remove(this);
+ nodes.erase(this);
if (prev && prev->next == this)
prev->next = 0L;
if (parent && parent->child == this)
--- branches/KDE/3.5/kdewebdev/quanta/parsers/parser.cpp #720994:720995
@@ -1215,8 +1215,8 @@
}
node = lastNode;
lastNode = lastNode->nextNotChild();
- if (lastNode)
- QString s = lastNode->tag->tagStr();
+/* if (lastNode)
+ QString s = lastNode->tag->tagStr();*/
}
}
/* kdDebug(24000)<< "END"<< endl;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic