[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/realgud 858b902 66/72: Merge pull request #286 from 813
From: |
Stefan Monnier |
Subject: |
[elpa] externals/realgud 858b902 66/72: Merge pull request #286 from 813gan/fix_locales_reload |
Date: |
Fri, 26 Mar 2021 22:49:14 -0400 (EDT) |
branch: externals/realgud
commit 858b902919dfe85ca0e15f258927647a0a049da9
Merge: 66f22b9 5d83013
Author: 813gan <29867887+813gan@users.noreply.github.com>
Commit: GitHub <noreply@github.com>
Merge pull request #286 from 813gan/fix_locales_reload
Add proper cleanup for locals. Fix broken logic from b5ee91c.
---
realgud/common/buffer/locals.el | 20 ++++++++++----------
realgud/common/core.el | 2 ++
realgud/common/track.el | 2 +-
3 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/realgud/common/buffer/locals.el b/realgud/common/buffer/locals.el
index 79b8da3..d69191f 100644
--- a/realgud/common/buffer/locals.el
+++ b/realgud/common/buffer/locals.el
@@ -29,7 +29,6 @@
(cl-defstruct realgud-locals-info
"debugger object/structure specific to a (top-level) program to be debugged."
(cmdbuf nil) ;; buffer of the associated debugger process
- (srcbuf nil) ;; associated source buffer
)
(make-variable-buffer-local (defvar realgud-locals-info))
@@ -66,30 +65,31 @@ ARGS - arguments for command"
(defun realgud-locals-init ()
"Create locals buffer and fill it for first time."
- (let ((cmdbuf (realgud-get-cmdbuf))
- (srcbuf (realgud-get-srcbuf)))
+ (let ((cmdbuf (realgud-get-cmdbuf)) )
(with-current-buffer-safe cmdbuf
(let ((locals-buffer (get-buffer-create
(format "*locals %s*"
(realgud-get-buffer-base-name
(buffer-name))))))
(realgud-cmdbuf-info-locals-buf= locals-buffer)
- (with-current-buffer-safe (realgud-get-srcbuf)
+ (with-current-buffer-safe (realgud-get-cmdbuf)
+ ;; Hook loc change for autorefresh.
(add-hook 'realgud-update-hook 'realgud:window-locals nil t) )
(with-current-buffer locals-buffer
(realgud-locals-mode) ; It kills local variables
- (add-hook 'kill-buffer-hook
- (lambda ()
- (with-current-buffer-safe (realgud-sget 'locals-info
'srcbuf)
- (remove-hook 'realgud-update-hook
'realgud:window-locals t) )) nil t)
+ (add-hook 'kill-buffer-hook 'realgud-locals-terminate)
(setq realgud-buffer-type 'locals)
(set (make-local-variable 'realgud-locals-info)
(make-realgud-locals-info
- :cmdbuf cmdbuf
- :srcbuf srcbuf)) )
+ :cmdbuf cmdbuf)) )
(realgud-locals-register-reload)
(realgud-locals-insert) ))))
+(defun realgud-locals-terminate (&optional buf)
+ (with-current-buffer (or buf (current-buffer))
+ (with-current-buffer-safe (realgud-get-cmdbuf)
+ (remove-hook 'realgud-update-hook 'realgud:window-locals t) )))
+
(defun realgud-locals-get-variable-data (local-var-name)
"Return list with type and value of variable, in that order.
diff --git a/realgud/common/core.el b/realgud/common/core.el
index af23eb7..b46b1fc 100644
--- a/realgud/common/core.el
+++ b/realgud/common/core.el
@@ -29,6 +29,7 @@
(declare-function realgud-cmdbuf-command-string 'realgud-buffer-command)
(declare-function realgud-cmdbuf-debugger-name 'realgud-buffer-command)
(declare-function realgud-cmdbuf-info-bp-list= 'realgud-buffer-command)
+(declare-function realgud-locals-terminate 'realgud-locals)
(declare-function realgud-cmdbuf-info-in-debugger?= 'realgud-buffer-command)
(declare-function realgud-cmdbuf-info-starting-directory=
'realgud-buffer-command)
(declare-function realgud-cmdbuf-mode-line-update 'realgud-buffer-command)
@@ -159,6 +160,7 @@ icons and resets short-key mode."
(let ((cmdbuf (realgud-get-cmdbuf buf)))
(if cmdbuf
(with-current-buffer cmdbuf
+ (realgud-locals-terminate)
(realgud-cmdbuf-info-in-debugger?= nil)
(realgud-cmdbuf-info-bp-list= '())
(realgud-cmdbuf-mode-line-update)
diff --git a/realgud/common/track.el b/realgud/common/track.el
index 6d09d3a..a655d9d 100644
--- a/realgud/common/track.el
+++ b/realgud/common/track.el
@@ -435,7 +435,7 @@ encountering a new loc."
(realgud-cmdbuf-info-in-srcbuf?= nil))
)
))
- (with-current-buffer-safe (realgud-get-srcbuf)
+ (with-current-buffer-safe (realgud-get-cmdbuf)
(run-hooks 'realgud-update-hook) )
)
- [elpa] externals/realgud f70405f 38/72: Correct some declare-function locations, (continued)
- [elpa] externals/realgud f70405f 38/72: Correct some declare-function locations, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud 7e940af 40/72: debbugers: Fix void realgud:run-process error in gdb and gub., Stefan Monnier, 2021/03/26
- [elpa] externals/realgud 493a4da 41/72: Merge pull request #270 from Apteryks/fix-unbound-realgud-run-process, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud f23d0c8 49/72: allow displaying multi-line values, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud 6acb987 50/72: Add comments, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud 843885c 52/72: fix function declaration to calm down travis, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud de31e77 55/72: Merge pull request #276 from 813gan/locals-window-v2.1, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud 75a6e60 56/72: Fix #275. Add srcbuf-mode to allow cleaning up shortcuts at quit., Stefan Monnier, 2021/03/26
- [elpa] externals/realgud d496bcd 57/72: add test/test-keymap-cleanup.el for #275, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud 5b0ed08 58/72: Merge pull request #277 from 813gan/fix_gh275, Stefan Monnier, 2021/03/26
- [elpa] externals/realgud 858b902 66/72: Merge pull request #286 from 813gan/fix_locales_reload,
Stefan Monnier <=
- [elpa] externals/realgud 72cb88d 68/72: fix issue: failed to load file realgud/common/helper., Stefan Monnier, 2021/03/26