sas created this revision. Don't access `name[1] if the string is only of length 1. Avoids a crash/assertion failure when parsing the string `-`.
Test Plan: Debug a swift binary, set a breakpoint, watch lldb not crash Original change by Paul Menage <men...@fb.com> https://reviews.llvm.org/D33853 Files: source/Plugins/Language/ObjC/ObjCLanguage.cpp Index: source/Plugins/Language/ObjC/ObjCLanguage.cpp =================================================================== --- source/Plugins/Language/ObjC/ObjCLanguage.cpp +++ source/Plugins/Language/ObjC/ObjCLanguage.cpp @@ -95,7 +95,7 @@ // or '-' can be omitted bool valid_prefix = false; - if (name[0] == '+' || name[0] == '-') { + if (name.size() > 1 && (name[0] == '+' || name[0] == '-')) { valid_prefix = name[1] == '['; if (name[0] == '+') m_type = eTypeClassMethod;
Index: source/Plugins/Language/ObjC/ObjCLanguage.cpp =================================================================== --- source/Plugins/Language/ObjC/ObjCLanguage.cpp +++ source/Plugins/Language/ObjC/ObjCLanguage.cpp @@ -95,7 +95,7 @@ // or '-' can be omitted bool valid_prefix = false; - if (name[0] == '+' || name[0] == '-') { + if (name.size() > 1 && (name[0] == '+' || name[0] == '-')) { valid_prefix = name[1] == '['; if (name[0] == '+') m_type = eTypeClassMethod;
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits