Package: emacs;
Reported by: Yuan Fu <casouri <at> gmail.com>
Date: Sat, 18 Jan 2020 18:49:02 UTC
Severity: normal
Tags: patch
Found in version 27.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Message #13 received at 39178 <at> debbugs.gnu.org (full text, mbox):
From: Yuan Fu <casouri <at> gmail.com> To: 39178 <at> debbugs.gnu.org Subject: Re: bug#39178: closed (Re: bug#39178: 27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function error) Date: Fri, 31 Jan 2020 10:26:34 -0500
[Message part 1 (text/plain, inline)]
Thanks. Yuan > On Jan 31, 2020, at 4:45 AM, GNU bug Tracking System <help-debbugs <at> gnu.org> wrote: > > Your bug report > > #39178: 27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function error > > which was filed against the emacs package, has been closed. > > The explanation is attached below, along with your original report. > If you require more details, please reply to 39178 <at> debbugs.gnu.org. > > -- > 39178: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39178 > GNU Bug Tracking System > Contact help-debbugs <at> gnu.org with problems > > From: Eli Zaretskii <eliz <at> gnu.org> > Subject: Re: bug#39178: 27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function error > Date: January 31, 2020 at 4:44:32 AM GMT-5 > To: Yuan Fu <casouri <at> gmail.com> > Cc: 39178-done <at> debbugs.gnu.org > > >> From: Yuan Fu <casouri <at> gmail.com> >> 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.) > > > > > From: Yuan Fu <casouri <at> gmail.com> > Subject: 27.0.50; [PATCH] Fix: gdb-mi cannot recover from handler function error > Date: January 18, 2020 at 1:48:45 PM GMT-5 > To: Bug Report Emacs <bug-gnu-emacs <at> gnu.org> > > > 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. > > <unwind-protect.patch> > > 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. > Quit > Wrote /Users/yuan/.emacs.d/cache/.emacs.desktop.lock > Quit > Configured using: > 'configure --with-modules --with-pdumper=yes > --oldincludedir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/libxml2/' > > Configured features: > NOTIFY KQUEUE ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES > THREADS PDUMPER LCMS2 > > 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/windman/windman > /Users/yuan/.emacs.d/ranch/nerd-font/test/test-helper hides /Users/yuan/.emacs.d/ranch/doom-themes/test/test-helper > /Users/yuan/.emacs.d/ranch/julia-mode/julia-mode hides /Users/yuan/.emacs.d/package/julia-mode-20190813.1326/julia-mode > /Users/yuan/.emacs.d/ranch/julia-mode/julia-latexsubs hides /Users/yuan/.emacs.d/package/julia-mode-20190813.1326/julia-latexsubs > /Users/yuan/.emacs.d/ranch/matlab-emacs/mlint hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/mlint > /Users/yuan/.emacs.d/ranch/matlab-emacs/company-matlab-shell hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/company-matlab-shell > /Users/yuan/.emacs.d/ranch/matlab-emacs/linemark hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/linemark > /Users/yuan/.emacs.d/ranch/matlab-emacs/semanticdb-matlab hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/semanticdb-matlab > /Users/yuan/.emacs.d/ranch/matlab-emacs/semantic-matlab hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/semantic-matlab > /Users/yuan/.emacs.d/ranch/matlab-emacs/srecode-matlab hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/srecode-matlab > /Users/yuan/.emacs.d/ranch/matlab-emacs/matlab hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/matlab > /Users/yuan/.emacs.d/ranch/matlab-emacs/cedet-matlab hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/cedet-matlab > /Users/yuan/.emacs.d/ranch/matlab-emacs/tlc hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/tlc > /Users/yuan/.emacs.d/ranch/matlab-emacs/matlab-publish hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/matlab-publish > /Users/yuan/.emacs.d/ranch/matlab-emacs/matlab-mode-pkg hides /Users/yuan/.emacs.d/package/matlab-mode-20180928.1526/matlab-mode-pkg > /Users/yuan/.emacs.d/package/faceup-20170925.1946/faceup hides /Users/yuan/attic/emacs/lisp/emacs-lisp/faceup > > Features: > (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)) > >
[Message part 2 (text/html, inline)]
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.