[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#39178: closed (27.0.50; [PATCH] Fix: gdb-mi cannot recover from hand

From: GNU bug Tracking System
Subject: bug#39178: closed (27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function error)
Date: Fri, 31 Jan 2020 09:45:02 +0000

Your message dated Fri, 31 Jan 2020 11:44:32 +0200
with message-id <address@hidden>
and subject line Re: bug#39178: 27.0.50; [PATCH] Fix: gdb-mi cannot recover 
from handler function error
has caused the debbugs.gnu.org bug report #39178,
regarding 27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function 
to be marked as done.

(If you believe you have received this mail in error, please contact

39178: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39178
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: 27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function error Date: Sat, 18 Jan 2020 13:48:45 -0500
If a handler produces an error, cleanup code doesn’t get to run and leaves 
gbd-mi.el in a corrupted state (in terms of communication buffer). So other 
handlers can’t parse the message sent from gdb anymore.

Attachment: unwind-protect.patch
Description: Binary data

In GNU Emacs 27.0.50 (build 3, x86_64-apple-darwin19.0.0, NS appkit-1894.10 
Version 10.15.1 (Build 19B88))
of 2019-11-30 built on missSilver
Repository revision: e2828795d73637577c7726965974a047fe2d7119
Repository branch: master
Windowing system distributor 'Apple', version 10.3.1894
System Description:  Mac OS X 10.15.2

Recent messages:
Loading /Users/yuan/.emacs.d/star/org.el (source)...done
Loading /Users/yuan/.emacs.d/star/tex.el (source)...done
Loading /Users/yuan/.emacs.d/star/simple-mode.el (source)...done
Loading /Users/yuan/.emacs.d/custom.el (source)...done
Loading /Users/yuan/.emacsenv...done
Starting new Ispell process aspell with default dictionary...done
For information about GNU Emacs and the GNU system, type C-h C-a.
Emacs ready in 0.90 seconds with 0 garbage collections.
Wrote /Users/yuan/.emacs.d/cache/.emacs.desktop.lock
Configured using:
'configure --with-modules --with-pdumper=yes

Configured features:

Important settings:
  value of $LC_CTYPE: UTF-8
  value of $LANG: en_CN.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  desktop-save-mode: t
  ghelp-global-minor-mode: t
  minibuffer-electric-default-mode: t
  flymake-mode: t
  global-magit-file-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  shell-dirtrack-mode: t
  flyspell-mode: t
  outshine-mode: t
  ws-butler-global-mode: t
  ws-butler-mode: t
  minions-mode: t
  eyebrowse-mode: t
  savehist-mode: t
  global-hl-todo-mode: t
  hl-todo-mode: t
  global-highlight-parentheses-mode: t
  highlight-parentheses-mode: t
  rainbow-delimiters-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  electric-pair-mode: t
  winner-mode: t
  aggressive-indent-mode: t
  ivy-prescient-mode: t
  prescient-persist-mode: t
  recentf-mode: t
  which-key-mode: t
  general-override-mode: t
  outline-minor-mode: t
  ivy-mode: t
  company-mode: t
  override-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-quote-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  transient-mark-mode: t
  hs-minor-mode: t

Load-path shadows:
/Users/yuan/.emacs.d/ranch/winman/windman hides 
/Users/yuan/.emacs.d/ranch/nerd-font/test/test-helper hides 
/Users/yuan/.emacs.d/ranch/julia-mode/julia-mode hides 
/Users/yuan/.emacs.d/ranch/julia-mode/julia-latexsubs hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/mlint hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/company-matlab-shell hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/linemark hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/semanticdb-matlab hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/semantic-matlab hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/srecode-matlab hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/matlab hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/cedet-matlab hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/tlc hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/matlab-publish hides 
/Users/yuan/.emacs.d/ranch/matlab-emacs/matlab-mode-pkg hides 
/Users/yuan/.emacs.d/package/faceup-20170925.1946/faceup hides 

(shadow sort mail-extr emacsbug sendmail vc-git vc-bzr vc-src vc-sccs
vc-svn vc-cvs vc-rcs vc vc-dispatcher magit-bookmark bookmark
company-oddmuse company-keywords company-etags etags fileloop
company-gtags company-dabbrev-code company-dabbrev company-files
company-capf company-cmake company-xcode company-clang company-semantic
company-eclim company-template company-bbdb hideshow desktop frameset
trivial-copy ghelp-eglot ghelp-helpful ghelp-builtin ghelp cus-edit
cus-start cus-load luna-publish utility pause luna-general-config
minibuf-eldef eglot array jsonrpc ert pp ewoc debug flymake-proc flymake
warnings url-util magit-submodule magit-obsolete magit-blame magit-stash
magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone
magit-remote magit-commit magit-sequence magit-notes magit-worktree
magit-tag magit-merge magit-branch magit-reset magit-files magit-refs
magit-status magit magit-repos magit-apply magit-wip magit-log
which-func magit-diff smerge-mode diff-mode magit-core magit-autorevert
autorevert filenotify magit-margin magit-transient magit-process
magit-mode transient git-commit magit-git magit-section magit-utils crm
log-edit message rmc puny rfc822 mml mml-sec epa derived epg epg-config
gnus-util rmail rmail-loaddefs text-property-search mm-decode mm-bodies
mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums
mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log
with-editor async-bytecomp async shell server flyspell ispell outshine
outshine-org-cmds outorg isolate inline expand-region
text-mode-expansions the-org-mode-expansions er-basic-expansions
thingatpt expand-region-core expand-region-custom ws-butler minions
eyebrowse savehist buffer-move windmove hl-todo highlight-parentheses
rainbow-delimiters doom-cyberpunk-theme undo-tree diff
doom-one-light-theme elec-pair winner doom-themes doom-themes-base
windman aggressive-indent find-char ivy-prescient prescient recentf-ext
recentf tree-widget wid-edit which-key general helpful imenu trace
edebug backtrace info-look f dash-functional help-fns radix-tree
elisp-refs s loop dash org-element avl-tree generator org advice
org-macro org-footnote org-pcomplete pcomplete org-list org-faces
org-entities time-date noutline outline org-version ob-emacs-lisp ob
ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint
ob-core ob-eval org-compat org-macs org-loaddefs format-spec find-func
cal-menu calendar cal-loaddefs counsel xdg xref project dired
dired-loaddefs compile comint ansi-color swiper cl-extra help-mode ivy
delsel ring colir color ivy-overlay company edmacro kmacro pcase
use-package use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key easy-mmode use-package-core finder-inf
tex-site info cowboy package easymenu browse-url url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs
password-cache json subr-x map url-vars cl-loaddefs cl-lib lunary
lunary-ui luna-f rx seq byte-opt gv bytecomp byte-compile cconv tooltip
eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel
term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd
fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame minibuffer cl-generic
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads kqueue cocoa ns
lcms2 multi-tty make-network-process emacs)

Memory information:
((conses 16 77000 107585)
(symbols 48 4960 1)
(strings 32 19231 6468)
(string-bytes 1 447877)
(vectors 16 7984)
(vector-slots 8 124333 23380)
(floats 8 464 309)
(intervals 56 2209 0)
(buffers 1000 12))

--- End Message ---
--- Begin Message --- Subject: Re: bug#39178: 27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function error Date: Fri, 31 Jan 2020 11:44:32 +0200
> From: Yuan Fu <address@hidden>
> Date: Sat, 18 Jan 2020 13:48:45 -0500
> If a handler produces an error, cleanup code doesn’t get to run and leaves 
> gbd-mi.el in a corrupted state (in terms of communication buffer). So other 
> handlers can’t parse the message sent from gdb anymore.

Thanks, pushed to the emacs-27 branch.

Please in the future try to observe the following nits:

> * lisp/progmodes/gdb-mi.el (gdb-handle-reply):
> Handle error in ’handler-function’ so the cleanup code after it

Please use quoting 'like this' in log messages (and also in NEWS).

> +      (condition-case err
> +          ;; protect against errors in handler-function

Comments should be complete sentences, and as such, begin with a
capital letter and end in a period.

(I fixed all of these nits this time.)

--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]