diff --git a/CHANGELOG.md b/CHANGELOG.md index e4f70c93..3c431570 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ types (non-structs). * Source all files in ~/.config/seergdb/scripts/ on startup. * Fixed regression handling ignoring of system header files. +* Fixed regression when adding commands to a breakpoint. ## [2.4] - 2024-03-18 * Changed main icon to a more license friendly one. diff --git a/src/SeerBreakpointsBrowserWidget.cpp b/src/SeerBreakpointsBrowserWidget.cpp index 6df1534a..f3437709 100644 --- a/src/SeerBreakpointsBrowserWidget.cpp +++ b/src/SeerBreakpointsBrowserWidget.cpp @@ -130,7 +130,7 @@ void SeerBreakpointsBrowserWidget::handleText (const QString& text) { // Then morph that list into a map, delimited by a '='. // Remove bookends. // - QStringList items = Seer::parseCommaList(bkpt_text); + QStringList items = Seer::parseCommaList(bkpt_text, '[', ']'); QMap keyValueMap = Seer::createKeyValueMap(items, '='); @@ -147,7 +147,7 @@ void SeerBreakpointsBrowserWidget::handleText (const QString& text) { QString cond_text = Seer::filterBookends(keyValueMap["cond"], '"', '"'); QString times_text = Seer::filterBookends(keyValueMap["times"], '"', '"'); QString ignore_text = Seer::filterBookends(keyValueMap["ignore"], '"', '"'); - QString script_text = Seer::filterBookends(keyValueMap["script"], '{', '}'); + QString script_text = Seer::filterBookends(keyValueMap["script"], '[', ']'); QString original_location_text = Seer::filterBookends(keyValueMap["original-location"], '"', '"'); // Only look for 'breakpoint' type break points. diff --git a/tests/helloqstring/breakpoints.seer b/tests/helloqstring/breakpoints.seer new file mode 100644 index 00000000..e198f11d --- /dev/null +++ b/tests/helloqstring/breakpoints.seer @@ -0,0 +1,5 @@ +break -source /nas/erniep/Development/seer/tests/helloqstring/helloqstring.cpp -line 16 + commands + print str + end +break -source /nas/erniep/Development/seer/tests/helloqstring/helloqstring.cpp -line 7 diff --git a/tests/helloqstring/project.seer b/tests/helloqstring/project.seer new file mode 100644 index 00000000..1dcb9228 --- /dev/null +++ b/tests/helloqstring/project.seer @@ -0,0 +1,24 @@ +{ + "seerproject": { + "executable": "helloqstring", + "postgdbcommands": [ + "" + ], + "pregdbcommands": [ + "" + ], + "startmode": { + "arguments": "one two three", + "breakinfunction": false, + "breakinfunctionname": "", + "breakinmain": true, + "breakpointsfile": "/nas/erniep/Development/seer/tests/helloqstring/breakpoints.seer", + "nobreak": false, + "nonstopmode": false, + "randomizestartaddress": false, + "showassemblytab": false + }, + "symbolfile": "", + "workingdirectory": "" + } +}