From 2f26195b239d3ef6a8fc2222c01e806343ff011a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Marjam=C3=A4ki?= Date: Fri, 1 Jan 2016 15:13:50 +0100 Subject: [PATCH] Fixed #7248 (crash in ValueType::str()) --- lib/symboldatabase.cpp | 2 +- test/testsymboldatabase.cpp | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/symboldatabase.cpp b/lib/symboldatabase.cpp index 90e374c26..f2fb38a71 100644 --- a/lib/symboldatabase.cpp +++ b/lib/symboldatabase.cpp @@ -3934,5 +3934,5 @@ std::string ValueType::str() const if (constness & (2 << p)) ret += " const"; } - return ret.substr(1); + return ret.empty() ? ret : ret.substr(1); } diff --git a/test/testsymboldatabase.cpp b/test/testsymboldatabase.cpp index fdd89b854..a16565d85 100644 --- a/test/testsymboldatabase.cpp +++ b/test/testsymboldatabase.cpp @@ -3008,6 +3008,9 @@ private: } void valuetype() { + // stringification + ASSERT_EQUALS("", ValueType().str()); + // numbers ASSERT_EQUALS("signed int", typeOf("1", "1")); ASSERT_EQUALS("unsigned int", typeOf("1U", "1U"));