@@ -317,6 +317,9 @@ This is shared among all sessions.")
317
317
The alist has the format ((TOKEN . (TYPE . DATA)) ...).
318
318
This is shared among all sessions." )
319
319
320
+ (defvar gdb--inferior-argument-history nil
321
+ " History of arguments passed to the inferior." )
322
+
320
323
(cl-defstruct gdb--disassembly-instr addr func offset instr opcodes)
321
324
(cl-defstruct gdb--disassembly-src file line-str instrs)
322
325
(cl-defstruct gdb--disassembly-data (mode 4 ) func list new widths) ; ; NOTE(nox): widths - [addr opcode instr]
@@ -2400,7 +2403,9 @@ If BREAK-MAIN is non-nil, break at main."
2400
2403
(gdb--with-valid-session
2401
2404
(when (gdb-kill) (sit-for 0.05 ))
2402
2405
(when arg
2403
- (let ((arguments (read-string " Arguments: " (gdb--session-debuggee-args session))))
2406
+ (let* ((history-add-new-input t )
2407
+ (arguments (read-string " Arguments: " (gdb--session-debuggee-args session)
2408
+ 'gdb--inferior-argument-history )))
2404
2409
(setf (gdb--session-debuggee-args session) arguments)
2405
2410
(gdb--command (concat " -exec-arguments " arguments))))
2406
2411
(gdb--command (concat " -exec-run" (and break-main " --start" )))))
@@ -2476,7 +2481,8 @@ If ARG is non-nil, stop all threads unconditionally."
2476
2481
finally return t )
2477
2482
return nil )
2478
2483
2479
- (gdb--command " -target-disconnect" ))))
2484
+ (gdb--command " -target-disconnect" )
2485
+ t ))) ; NOTE(nox): Some functions need to know if an inferior was killed
2480
2486
2481
2487
(defun gdb-select ()
2482
2488
" Select inferred frame or thread."
0 commit comments