diff --git a/src/shared/proparser/profileparser.cpp b/src/shared/proparser/profileparser.cpp
index 6c8d0c9fa892e12972053cd4d5fe8a8d1675337c..d2b1123e6d827cd26eda6d90cfc6b2979f9ba311 100644
--- a/src/shared/proparser/profileparser.cpp
+++ b/src/shared/proparser/profileparser.cpp
@@ -276,7 +276,8 @@ bool ProFileParser::read(ProFile *pro, const QString &in)
     ushort *buf = (ushort *)xprBuff.constData();
 
     // Parser state
-    m_blockstack.resize(m_blockstack.size() + 1);
+    m_blockstack.clear();
+    m_blockstack.resize(1);
 
     QStack<ParseCtx> xprStack;
     xprStack.reserve(10);