diff --git a/src/plugins/valgrind/xmlprotocol/parser.cpp b/src/plugins/valgrind/xmlprotocol/parser.cpp
index 22e2dbadf11..14ecb66519f 100644
--- a/src/plugins/valgrind/xmlprotocol/parser.cpp
+++ b/src/plugins/valgrind/xmlprotocol/parser.cpp
@@ -485,6 +485,10 @@ void Parser::Private::parseError()
while (auxs.size() < frames.size())
auxs.prepend(XauxWhat());
+ //add empty stacks until sizes match
+ while (frames.size() < auxs.size())
+ frames.push_back(QVector());
+
QVector stacks;
for (int i = 0; i < auxs.size(); ++i)
stacks.append(makeStack(auxs[i], frames[i]));