With test-case gdb.dap/sources.exp, I run into:
...
{"request_seq": 4, "type": "response", "command": "source", \
"success": false, "message": "notStopped", \
"seq": 11}FAIL: gdb.dap/sources.exp: get source success
ERROR: tcl error sourcing gdb.dap/sources.exp.
ERROR: key "body" not known in dictionary
...
The FAIL has been filed as PR dap/31374.
The ERROR happens because after the FAIL, dap_check_request_and_response
returns "", and the test-case doesn't check for that.
Fix this by checking for $obj != "" in the test-case.
Tested on x86_64-linux.
set obj [dap_check_request_and_response "get source" source \
[format {o source [o path [s %s]] \
sourceReference [i 0]} $path]]
- set text [dict get [lindex $obj 0] body content]
- gdb_assert {[string first "Distinguishing comment" $text] != -1}
+ if { $obj != "" } {
+ set text [dict get [lindex $obj 0] body content]
+ gdb_assert {[string first "Distinguishing comment" $text] != -1}
+ }
}