From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: npostavs@users.sourceforge.net Newsgroups: gmane.emacs.bugs Subject: bug#6991: Please keep bytecode out of *Backtrace* buffers Date: Sat, 11 Feb 2017 21:26:31 -0500 Message-ID: <87wpcwkuug.fsf@users.sourceforge.net> References: <8739tm9vzl.fsf@jidanni.org> <87vb5ct1lz.fsf@gnus.org> <2223f654-1e67-4a9a-a471-828fd4078410@default> <87fumokzbp.fsf@users.sourceforge.net> <83oa1bc3x2.fsf@gnu.org> <87d1hrlek2.fsf@users.sourceforge.net> <83eg27bjah.fsf@gnu.org> <87a8cvlcmk.fsf@users.sourceforge.net> <8360njb9o5.fsf@gnu.org> <877f7zksm0.fsf@users.sourceforge.net> <83oa1a9msk.fsf@gnu.org> <83vavf73ei.fsf@gnu.org> <8360ne6v1q.fsf@gnu.org> <874m2ujh2v.fsf@users.sourceforge.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: blaine.gmane.org 1486866377 11379 195.159.176.226 (12 Feb 2017 02:26:17 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 12 Feb 2017 02:26:17 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) Cc: lekktu@gmail.com, johnw@gnu.org, 6991@debbugs.gnu.org, larsi@gnus.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Feb 12 03:26:11 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ccjre-0002Xp-Ac for geb-bug-gnu-emacs@m.gmane.org; Sun, 12 Feb 2017 03:26:11 +0100 Original-Received: from localhost ([::1]:50441 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ccjrk-00051y-0W for geb-bug-gnu-emacs@m.gmane.org; Sat, 11 Feb 2017 21:26:16 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52742) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ccjrZ-00051l-HI for bug-gnu-emacs@gnu.org; Sat, 11 Feb 2017 21:26:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ccjrW-0000fO-5p for bug-gnu-emacs@gnu.org; Sat, 11 Feb 2017 21:26:05 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:37889) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ccjrW-0000fK-06 for bug-gnu-emacs@gnu.org; Sat, 11 Feb 2017 21:26:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ccjrV-0002ta-QT for bug-gnu-emacs@gnu.org; Sat, 11 Feb 2017 21:26:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: npostavs@users.sourceforge.net Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 12 Feb 2017 02:26:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 6991 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 6991-submit@debbugs.gnu.org id=B6991.148686633011091 (code B ref 6991); Sun, 12 Feb 2017 02:26:01 +0000 Original-Received: (at 6991) by debbugs.gnu.org; 12 Feb 2017 02:25:30 +0000 Original-Received: from localhost ([127.0.0.1]:36089 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ccjr0-0002sp-Ge for submit@debbugs.gnu.org; Sat, 11 Feb 2017 21:25:30 -0500 Original-Received: from mail-it0-f68.google.com ([209.85.214.68]:36333) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ccjqz-0002sd-74 for 6991@debbugs.gnu.org; Sat, 11 Feb 2017 21:25:29 -0500 Original-Received: by mail-it0-f68.google.com with SMTP id f200so7963893itf.3 for <6991@debbugs.gnu.org>; Sat, 11 Feb 2017 18:25:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=2dvbK89puM7a0YrcZxQrjYVMrerc8uEyMz1PUo1Mc/8=; b=Ce8Y0csZ7dX8qecIkHiKWgav4ghG0kGCg+HYhSTpLnfQyDeS2IxRQ9shjGDx0zOGHd fWKP6Wv+cI3nYhKvRoF9KL3lvo/5tx/TD984rmn1hxwSnC4gqLPE5baQEkP+tmIY2LyQ KkUaC9R/3J5ub7l4+2nBdNudoSVVZxSOwdkguET5pzWxAaTCIed+zfQDZ/bEVNb1esfO wlWTEPv1e/UNWLCstrP1zx7uEztr7GJVXXzqSUZbzdxC5En41M4lW52uymuCJG8DA0rZ u0tNlIK3ZPCPix50QkN0dHdZLW6AOQe7mfs7+RYaSpw+CHGsi8M1VD1e0BwI6ye9KDeI i56A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=2dvbK89puM7a0YrcZxQrjYVMrerc8uEyMz1PUo1Mc/8=; b=sr7fGorJhlaqBtdUiNKzJb1qQk6I1mcEcVvX05rZlfjhq2T9cztbrXhPA5kURvj31v EoLgHN+o7u5UinEZwOSAS9DHGVGxp6/2oN5irAHQWuFlFtZHrk248xNIU2KGZllMLAmU voemgrbiRA3s/uH0ovfR0y7mDHF1YymMPCXSVWkC3KkmbLhuyr3CZW/zGzSQmRGVwHFw Jj9vNBhg+Ax0AvIglbg2wFWGD5kQi+f4930ZMKx4tikIM3lem62IuRmL8NKsqiiNYfsp 9Wmloyyb73lAdtLxtRaAWNS93QvzA2TtnquYxtRxB8WAIL8ZhpGsR8bgT3K+q6FEYuPA mbUA== X-Gm-Message-State: AIkVDXI+N1aCPbbcjvJ84Z/6BB6/C71JBSYJcY6Bwp98QhKyC5PiWR7/BVlPlKG5RnjPug== X-Received: by 10.36.155.11 with SMTP id o11mr35885835itd.11.1486866322974; Sat, 11 Feb 2017 18:25:22 -0800 (PST) Original-Received: from zony ([45.2.7.65]) by smtp.googlemail.com with ESMTPSA id a128sm2432983itg.22.2017.02.11.18.25.20 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 11 Feb 2017 18:25:21 -0800 (PST) In-Reply-To: (Stefan Monnier's message of "Sat, 26 Nov 2016 13:54:36 -0500") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:129253 Archived-At: --=-=-= Content-Type: text/plain Stefan Monnier writes: > FWIW, I agree. The only issue I can see here is that depending on how > it's done, it could affect the size of the .elc files (by using two bytes > per bytecode 0 rather than 1). Nothing too terrible, but it's probably > worth checking whether it does make such a difference and if so how serious > it is. On average it increases Emacs' .elc by ~200 bytes each, 276kB in total, or 100.62%. --=-=-= Content-Type: application/octet-stream Content-Disposition: attachment; filename=elc-sizes.org.gz Content-Transfer-Encoding: base64 Content-Description: table of size changes for print NUL as \0 H4sICGcYU1gAA2VsYy1zaXplcy5vcmcAjFzZktu4kn2fiPkHxo2YpxtqY1/+ZV5YEsvFtiTqUlK5 a8IfPwkRyATJpFT14GY77GMAuZ1cgD/N2P5uzvdj86eBn3/9r/gXfJ3bU9e8+nn8hebQHW8tfI/t rR+a/2n+/Pd//dmVn38zX09//s1+J0z4p7Sx0TbTVxAKvtq3t7H7/Ks77l+us2mU8OlbCvGXE03G NCJ4+fgjRgrnEuax/3l+AYmYclpQwjShYDrtjX78EWdkxjwO99vud3/42d2uG+AF0yiN63QZU4lo nEm/raQI1iPm9/YudSRMX9YpvY2PI4EvF9IptOdrv9sPx2F8glvW2QSz3ru23k6Y2gmVDqe9jMNl 2Nr0AlO5UDC9xfMU+nGK6Svoh9zH/e40HLqnoHie019+YOLelY+TOjQqCGMemGP79W25a9QlEwum 1d5P+mmNtI913m8fu+twH/dPllowtUdMj/oJKhTD9Eec1WHCHNrx5/fOE/Qb5a5Q7spaMcldOWEy Zn++duMzfUJMS3LXeJ7WhMmOlHXGZkwwzu9hSoeY6SuvUzqd1wmq+tDPz6E/fFtGSk6Y8i+BmEp6 PZ2nklEmo3hrb7dufCF5xPRo72m7xYfoGCcfIlx4YPbnQ3/++VzpUefJjkjuHgxp8iGw3sfhvA3D r1M7/voeZpQoI8S0Qhs16aewKp3s2wuzXOwdbVOjbYL1aJXtSD2+3u7v77tTd74/gyafjPrp8Tyl ET7L3cjH19v9dhteOWVcJ4epnM1+CVyMToezb4/7H+mXXdudt3QU1+kN6hLqvAlGTbpkovJqjnnc tNCCGQxietTPoFSYdClo4+Icc+xvHzxq8fMyiIJZ2aYSZvKfSukwXydo6qt1au0KpkUfoqINGTPG xd73w+ntxXnqgJiafF2w2Sc3wT2cdoV5Of7zAlPaWDAD+fkYQo5HQqn5OrvTW7fhTWjvtmDKsncp YswhGmLx48ArzH823V3BjBb9PK1Tyqhc9slTPCLM99cyAsEXzEjxyNvJVTc2aGvnmMN42jB+1E+B /lNHikfFNhsH7nmOObb7FzJqCg8BXapiR7BZlwA9zDHv5/2LdU5inc7TEQ9xQhcestDPn2N7eW5H zWR6095J54WJOcYJt/AhH93x8ko/q1iMfKkBRzxxBvha7L0/gyU9X2fj8TzJz4MhZLlLJ+zch/zq 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 g9zvmtoBAA== --=-=-= Content-Type: text/plain But actually, while looking at this, I understood more about what the print_escape_nonascii flag is used for (i.e., multibyte vs unibyte stuff), and I no longer think it makes sense for it to affect printing the NUL byte anyway. I propose adding a new flag print_escape_control_characters instead (see patch #3 in the series). I also implemented hiding the byte code functions with text properties in #4. It's not quite satisfactory though, because it doesn't cover byte code functions values that are arguments, only byte code being called. I think printing needs to be made more flexible in order to cleanly catch all byte code values. Patch #5 replaces NUL bytes with "\0" in X selections (I guess it covers w32 as well? Haven't checked yet). --=-=-= Content-Type: image/png Content-Disposition: attachment; filename=backtrace-6991-screenshot.png Content-Transfer-Encoding: base64 Content-Description: screenshot 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 gSW53dgxlz1mXg77RTGyGLtw+RQLLfyuSvRzmf74j5PbbPE1YrzY43Pnf5ni79Yf/wXl/ri9f6v3 zQ/Z6m2G2Og/CWIuPru0G35Dl0m/nNiLPGhUTcvJttxzLtPnbPvQ0XGg8uvrR7Z57vWLSmXJTk8h sUNBFX3qh//YUHBaom3ZpJqDZtLIGOPnffkch7/S082dj1++7O3UtvT7Df/nNa8jd+OaO+076bN9 kQ3z6f134gHKvNcPXmsOmOt+wPdfT1uN91f/8b6diruPyo9KZ0cf99jmH2PksM33xI7Jxh8vbNl8 6YuohyHIU+6+YEE/5e+vMnutc7Gkxtx59EnS9eAlfqcOWHdg84RGSWHHd53/gB4ypSDtV4CPFDAS Evip9/ZvDSqwWXP07Mlds5q+89p6PqbQfe67iPheqw6fObraKttv+78vSB9LJcF/Uk3wU1PSlCr2 UstPvb93/enETs47fc/4eNhSg7YefppdzogwEU+qpo4GLy0lk8QnTqjd0H/mWK7vXLvJ6990njWE GRlwwGP1trORyeL7tsQzKHoqST1E97P4MRf+U/i/0gc/9+vLt8kCZtsOol2xc1/cjtQavHDrcb+L u+203/pt3Rss+vnhx131WLEvJMVsgfeli4eWWaZHvCwxt8jPfHl41YbAxMaj3bcv6q2HMXqtvHLn 9r9OpnR8NcSKK3fu3r15SBjdiw7e15i8fquOXb58cuv0zsL3BDnLZb8+vNLj3HuTaQf8LnvNNHl3 0n3tmc+ixbTl1ZdUuiWN5b54FKncqVvnbt1bfg8NLRoWrbbypAyzP777QjNtW7p/LJWrFhN4KUmp yto6yM6qsmnb5rxP72PxduSn3N6y8t/4bksO+V09v20sFuC+L7Swa8998/RnL7dTV85tHsL189z3 iKjLz//ut3lnhMkcL3+/Q7M1o58WzkpLpeO/GVUI8LS2sw5fvlSi+67cbPDS3Yf3rLBr8iPg3yvf dAf9729Xp34Naah0slpFkBF+7vx7owlu8/qot568dl7njKATt36W+TWjKisr429Q7LxcgmJ5vAKB ICf26YOILzmaHUfPH99R/Aag2tNxkV3vVsYa+G673ToZU9kf3omG/lD5ZafnR926GyfQ7jnCurGa agMr606qBV8ehIojPKahY6Cvq0Glausb6euzKFmZ2ZIKYLo9B/c11mo51KYDg58Q+bJsxYqrg7Jf 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 s+fMJhM7AAAAAElFTkSuQmCC --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=v1-0001-Operate-on-frame-list-instead-of-printed-backtrac.patch Content-Description: patch >From 622b9b1f328cfbf527e0dd350fd45566f4716849 Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Sat, 11 Feb 2017 09:19:00 -0500 Subject: [PATCH v1 1/5] Operate on frame list instead of printed backtrace * lisp/emacs-lisp/debug.el (debugger--insert-backtrace): New function, prints the given backtrace frames. (debugger-setup-buffer): Use it instead of editing the backtrace buffer text. --- lisp/emacs-lisp/debug.el | 84 +++++++++++++++++++++++++++--------------------- 1 file changed, 48 insertions(+), 36 deletions(-) diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el index cb77148c28..f24f62fa71 100644 --- a/lisp/emacs-lisp/debug.el +++ b/lisp/emacs-lisp/debug.el @@ -264,6 +264,40 @@ debug (setq debug-on-next-call debugger-step-after-exit) debugger-value))) + +(defun debugger-insert-backtrace (frames do-xrefs) + "Format and insert the backtrace FRAMES at point. +Make functions into cross-reference buttons if DO-XREFS is non-nil." + (let ((standard-output (current-buffer)) + (eval-buffers eval-buffer-list)) + (require 'help-mode) ; Define `help-function-def' button type. + (pcase-dolist (`(,evald ,fun ,args ,flags) frames) + (insert (if (plist-get flags :debug-on-exit) + "* " " ")) + (let ((fun-file (and do-xrefs (symbol-file fun 'defun))) + (fun-pt (point))) + (cond + ((and evald (not debugger-stack-frame-as-list)) + (prin1 fun) + (if args (prin1 args) (princ "()"))) + (t + (prin1 (cons fun args)) + (cl-incf fun-pt))) + (when fun-file + (make-text-button fun-pt (+ fun-pt (length (symbol-name fun))) + :type 'help-function-def + 'help-args (list fun fun-file)))) + ;; After any frame that uses eval-buffer, insert a line that + ;; states the buffer position it's reading at. + (when (and eval-buffers (memq fun '(eval-buffer eval-region))) + (insert (format " ; Reading at buffer position %d" + ;; This will get the wrong result if there are + ;; two nested eval-region calls for the same + ;; buffer. That's not a very useful case. + (with-current-buffer (pop eval-buffers) + (point))))) + (insert "\n")))) + (defun debugger-setup-buffer (args) "Initialize the `*Backtrace*' buffer for entry to the debugger. That buffer should be current already." @@ -271,22 +305,6 @@ debugger-setup-buffer (erase-buffer) (set-buffer-multibyte t) ;Why was it nil ? -stef (setq buffer-undo-list t) - (let ((standard-output (current-buffer)) - (print-escape-newlines t) - (print-level 8) - (print-length 50)) - ;; FIXME the debugger could pass a custom callback to mapbacktrace - ;; instead of manipulating printed results. - (mapbacktrace #'backtrace--print-frame 'debug)) - (goto-char (point-min)) - (delete-region (point) - (progn - (forward-line (if (eq (car args) 'debug) - ;; Remove debug--implement-debug-on-entry - ;; and the advice's `apply' frame. - 3 - 1)) - (point))) (insert "Debugger entered") ;; lambda is for debug-on-call when a function call is next. ;; debug is for debug-on-entry function called. @@ -301,10 +319,7 @@ debugger-setup-buffer (setq pos (point)) (setq debugger-value (nth 1 args)) (prin1 debugger-value (current-buffer)) - (insert ?\n) - (delete-char 1) - (insert ? ) - (beginning-of-line)) + (insert ?\n)) ;; Watchpoint triggered. ((and `watchpoint (let `(,symbol ,newval . ,details) (cdr args))) (insert @@ -341,23 +356,20 @@ debugger-setup-buffer (cdr args) args) (current-buffer)) (insert ?\n))) + (let ((frames (nthcdr + ;; Remove debug--implement-debug-on-entry and the + ;; advice's `apply' frame. + (if (eq (car args) 'debug) 3 1) + (backtrace-frames 'debug))) + (print-escape-newlines t) + (print-level 8) + (print-length 50)) + (when (eq (car args) 'exit) + (setf (cl-getf (nth 3 (car frames)) :debug-on-exit) nil)) + (debugger-insert-backtrace frames t)) ;; Place point on "stack frame 0" (bug#15101). - (goto-char pos)) - ;; After any frame that uses eval-buffer, - ;; insert a line that states the buffer position it's reading at. - (save-excursion - (let ((tem eval-buffer-list)) - (while (and tem - (re-search-forward "^ eval-\\(buffer\\|region\\)(" nil t)) - (end-of-line) - (insert (format " ; Reading at buffer position %d" - ;; This will get the wrong result - ;; if there are two nested eval-region calls - ;; for the same buffer. That's not a very useful case. - (with-current-buffer (car tem) - (point)))) - (pop tem)))) - (debugger-make-xrefs)) + (goto-char pos))) + (defun debugger-make-xrefs (&optional buffer) "Attach cross-references to function names in the `*Backtrace*' buffer." -- 2.11.1 --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=v1-0002-Improve-ert-backtrace-recording.patch Content-Description: patch >From 356c3e17edb19f5daef9f83f2c4d5694290f1221 Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Sat, 11 Feb 2017 17:19:41 -0500 Subject: [PATCH v1 2/5] Improve ert backtrace recording Change ert to use the new `backtrace-frames' function instead of collecting frames one by one with `backtrace-frame'. Additionally, collect frames starting from `signal' instead the somewhat arbitrary "6 from the bottom". Skipping 6 frames would skip the expression that actually caused the signal that triggered the debugger. Possibly 6 was chosen because in the case of a failed test, the triggering frame is an `ert-fail' call, which is not so interesting. But in case of test throwing an error, this drop the `error' call which is too much. * lisp/emacs-lisp/ert.el (ert--print-backtrace): Remove. (ert--print-backtrace): Add DO-XREFS parameter, delegate to `debugger-insert-backtrace'. (ert--run-test-debugger): Record the backtrace frames starting from the instigating `signal' call. (ert-run-tests-batch): Pass nil for `ert--print-backtrace's new DO-XREFS parameter. (ert-results-pop-to-backtrace-for-test-at-point): Pass t as DO-XREFS to `ert--print-backtrace' and remove call to `debugger-make-xrefs'. * test/lisp/emacs-lisp/ert-tests.el (ert-test-record-backtrace): Check the backtrace list instead of comparing its string representation. Expect `signal' to be the first frame. --- lisp/emacs-lisp/ert.el | 62 ++++++++++++--------------------------- test/lisp/emacs-lisp/ert-tests.el | 8 ++--- 2 files changed, 21 insertions(+), 49 deletions(-) diff --git a/lisp/emacs-lisp/ert.el b/lisp/emacs-lisp/ert.el index 785f4aca1c..98e4cd7c24 100644 --- a/lisp/emacs-lisp/ert.el +++ b/lisp/emacs-lisp/ert.el @@ -669,48 +669,12 @@ ert-debug-on-error (cl-defstruct (ert-test-aborted-with-non-local-exit (:include ert-test-result))) - -(defun ert--record-backtrace () - "Record the current backtrace (as a list) and return it." - ;; Since the backtrace is stored in the result object, result - ;; objects must only be printed with appropriate limits - ;; (`print-level' and `print-length') in place. For interactive - ;; use, the cost of ensuring this possibly outweighs the advantage - ;; of storing the backtrace for - ;; `ert-results-pop-to-backtrace-for-test-at-point' given that we - ;; already have `ert-results-rerun-test-debugging-errors-at-point'. - ;; For batch use, however, printing the backtrace may be useful. - (cl-loop - ;; 6 is the number of frames our own debugger adds (when - ;; compiled; more when interpreted). FIXME: Need to describe a - ;; procedure for determining this constant. - for i from 6 - for frame = (backtrace-frame i) - while frame - collect frame)) - -(defun ert--print-backtrace (backtrace) +(defun ert--print-backtrace (backtrace do-xrefs) "Format the backtrace BACKTRACE to the current buffer." - ;; This is essentially a reimplementation of Fbacktrace - ;; (src/eval.c), but for a saved backtrace, not the current one. (let ((print-escape-newlines t) (print-level 8) (print-length 50)) - (dolist (frame backtrace) - (pcase-exhaustive frame - (`(nil ,special-operator . ,arg-forms) - ;; Special operator. - (insert - (format " %S\n" (cons special-operator arg-forms)))) - (`(t ,fn . ,args) - ;; Function call. - (insert (format " %S(" fn)) - (cl-loop for firstp = t then nil - for arg in args do - (unless firstp - (insert " ")) - (insert (format "%S" arg))) - (insert ")\n")))))) + (debugger-insert-backtrace backtrace do-xrefs))) ;; A container for the state of the execution of a single test and ;; environment data needed during its execution. @@ -749,7 +713,19 @@ ert--run-test-debugger ((quit) 'quit) ((ert-test-skipped) 'skipped) (otherwise 'failed))) - (backtrace (ert--record-backtrace)) + ;; We store the backtrace in the result object for + ;; `ert-results-pop-to-backtrace-for-test-at-point'. + ;; This means we have to limit `print-level' and + ;; `print-length' when printing result objects. That + ;; might not be worth while when we can also use + ;; `ert-results-rerun-test-debugging-errors-at-point', + ;; (i.e., when running interactively) but having the + ;; backtrace ready for printing is important for batch + ;; use. + ;; + ;; Grab the frames starting from `signal', frames below + ;; that are all from the debugger. + (backtrace (backtrace-frames 'signal)) (infos (reverse ert--infos))) (setf (ert--test-execution-info-result info) (cl-ecase type @@ -1404,8 +1380,9 @@ ert-run-tests-batch (ert-test-result-with-condition (message "Test %S backtrace:" (ert-test-name test)) (with-temp-buffer - (ert--print-backtrace (ert-test-result-with-condition-backtrace - result)) + (ert--print-backtrace + (ert-test-result-with-condition-backtrace result) + nil) (goto-char (point-min)) (while (not (eobp)) (let ((start (point)) @@ -2394,8 +2371,7 @@ ert-results-pop-to-backtrace-for-test-at-point ;; Use unibyte because `debugger-setup-buffer' also does so. (set-buffer-multibyte nil) (setq truncate-lines t) - (ert--print-backtrace backtrace) - (debugger-make-xrefs) + (ert--print-backtrace backtrace t) (goto-char (point-min)) (insert (substitute-command-keys "Backtrace for test `")) (ert-insert-test-name-button (ert-test-name test)) diff --git a/test/lisp/emacs-lisp/ert-tests.el b/test/lisp/emacs-lisp/ert-tests.el index fc5790c365..317838b250 100644 --- a/test/lisp/emacs-lisp/ert-tests.el +++ b/test/lisp/emacs-lisp/ert-tests.el @@ -367,12 +367,8 @@ ert-test--which-file (test (make-ert-test :body test-body)) (result (ert-run-test test))) (should (ert-test-failed-p result)) - (with-temp-buffer - (ert--print-backtrace (ert-test-failed-backtrace result)) - (goto-char (point-min)) - (end-of-line) - (let ((first-line (buffer-substring-no-properties (point-min) (point)))) - (should (equal first-line (format " %S()" test-body))))))) + (should (eq (nth 1 (car (ert-test-failed-backtrace result))) + 'signal)))) (ert-deftest ert-test-messages () :tags '(:causes-redisplay) -- 2.11.1 --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=v1-0003-Escape-control-characters-in-backtraces-Bug-6991.patch Content-Description: patch >From 85bcf94d7bcf55e718f80fb22a3e0c8e351b0787 Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Sat, 11 Feb 2017 18:13:54 -0500 Subject: [PATCH v1 3/5] Escape control characters in backtraces (Bug#6991) * src/print.c (syms_of_print): Add new variable, print-escape-control-characters. (print_object): Print control characters with octal escape codes when print-escape-control-characters is true. * lisp/subr.el (backtrace): * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Bind `print-escape-control-characters' to t. --- lisp/emacs-lisp/debug.el | 2 +- lisp/subr.el | 3 ++- src/print.c | 40 +++++++++++++++++++++++++++++----------- 3 files changed, 32 insertions(+), 13 deletions(-) diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el index f24f62fa71..42e44761de 100644 --- a/lisp/emacs-lisp/debug.el +++ b/lisp/emacs-lisp/debug.el @@ -361,7 +361,7 @@ debugger-setup-buffer ;; advice's `apply' frame. (if (eq (car args) 'debug) 3 1) (backtrace-frames 'debug))) - (print-escape-newlines t) + (print-escape-control-characters t) (print-level 8) (print-length 50)) (when (eq (car args) 'exit) diff --git a/lisp/subr.el b/lisp/subr.el index a204577ddf..6e4779ef1f 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -4472,7 +4472,8 @@ backtrace--print-frame (defun backtrace () "Print a trace of Lisp function calls currently active. Output stream used is value of `standard-output'." - (let ((print-level (or print-level 8))) + (let ((print-level (or print-level 8)) + (print-escape-control-characters t)) (mapbacktrace #'backtrace--print-frame 'backtrace))) (defun backtrace-frames (&optional base) diff --git a/src/print.c b/src/print.c index db3d00f51f..1d3958a39e 100644 --- a/src/print.c +++ b/src/print.c @@ -1476,17 +1476,29 @@ print_object (Lisp_Object obj, Lisp_Object printcharfun, bool escapeflag) /* If we just had a hex escape, and this character could be taken as part of it, output `\ ' to prevent that. */ - if (need_nonhex && c_isxdigit (c)) - print_c_string ("\\ ", printcharfun); - - if (c == '\n' && print_escape_newlines - ? (c = 'n', true) - : c == '\f' && print_escape_newlines - ? (c = 'f', true) - : c == '\"' || c == '\\') - printchar ('\\', printcharfun); - - printchar (c, printcharfun); + if (c_isxdigit (c)) + { + if (need_nonhex) + print_c_string ("\\ ", printcharfun); + printchar (c, printcharfun); + } + else if (c == '\n' && print_escape_newlines + ? (c = 'n', true) + : c == '\f' && print_escape_newlines + ? (c = 'f', true) + : c == '\"' || c == '\\') + { + printchar ('\\', printcharfun); + printchar (c, printcharfun); + } + else if (print_escape_control_characters && c_iscntrl (c)) + { + char outbuf[5]; + int len = sprintf (outbuf, "\\%03o", c + 0u); + strout (outbuf, len, len, printcharfun); + } + else + printchar (c, printcharfun); need_nonhex = false; } } @@ -2264,6 +2276,11 @@ syms_of_print (void) Also print formfeeds as `\\f'. */); print_escape_newlines = 0; + DEFVAR_BOOL ("print-escape-control-characters", print_escape_control_characters, + doc: /* Non-nil means print control characters in strings as `\\OOO'. +\(OOO is the octal representation of the character code.)*/); + print_escape_control_characters = 0; + DEFVAR_BOOL ("print-escape-nonascii", print_escape_nonascii, doc: /* Non-nil means print unibyte non-ASCII chars in strings as \\OOO. \(OOO is the octal representation of the character code.) @@ -2352,6 +2369,7 @@ representation) and `#N#' in place of each subsequent occurrence, DEFSYM (Qprint_escape_newlines, "print-escape-newlines"); DEFSYM (Qprint_escape_multibyte, "print-escape-multibyte"); DEFSYM (Qprint_escape_nonascii, "print-escape-nonascii"); + DEFSYM (Qprint_escape_control_characters, "print-escape-control-characters"); print_prune_charset_plist = Qnil; staticpro (&print_prune_charset_plist); -- 2.11.1 --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=v1-0004-Hide-byte-code-in-backtraces-Bug-6991.patch Content-Description: patch >From bbec49e74acae529ddac91a23a9c81af53454e7e Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Sat, 11 Feb 2017 19:00:19 -0500 Subject: [PATCH v1 4/5] Hide byte code in backtraces (Bug#6991) * lisp/emacs-lisp/debug.el (help-byte-code): New button type, calls `disassemble' in its action. (debugger-insert-backtrace): Cover byte code with help-byte-code button. --- lisp/emacs-lisp/debug.el | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el index 42e44761de..94b683dcb9 100644 --- a/lisp/emacs-lisp/debug.el +++ b/lisp/emacs-lisp/debug.el @@ -265,6 +265,12 @@ debug debugger-value))) +(define-button-type 'help-byte-code + 'follow-link t + 'action (lambda (button) + (disassemble (button-get button 'byte-code-function))) + 'help-echo (purecopy "mouse-2, RET: disassemble this function")) + (defun debugger-insert-backtrace (frames do-xrefs) "Format and insert the backtrace FRAMES at point. Make functions into cross-reference buttons if DO-XREFS is non-nil." @@ -286,7 +292,15 @@ debugger-insert-backtrace (when fun-file (make-text-button fun-pt (+ fun-pt (length (symbol-name fun))) :type 'help-function-def - 'help-args (list fun fun-file)))) + 'help-args (list fun fun-file))) + (when (byte-code-function-p fun) + (goto-char fun-pt) + (forward-sexp) + (make-text-button fun-pt (point) + :type 'help-byte-code + 'byte-code-function fun + 'display "#") + (end-of-line))) ;; After any frame that uses eval-buffer, insert a line that ;; states the buffer position it's reading at. (when (and eval-buffers (memq fun '(eval-buffer eval-region))) -- 2.11.1 --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=v1-0005-Escape-NUL-bytes-in-X-selections-Bug-6991.patch Content-Description: patch >From 4f49294621e64a20462c369499d128523bf4a5de Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Sat, 11 Feb 2017 19:47:55 -0500 Subject: [PATCH v1 5/5] Escape NUL bytes in X selections (Bug#6991) * lisp/select.el (xselect--encode-string): Replace NUL bytes with "\0". --- lisp/select.el | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lisp/select.el b/lisp/select.el index a4a79255a9..705d6469d3 100644 --- a/lisp/select.el +++ b/lisp/select.el @@ -475,6 +475,9 @@ xselect--encode-string (t (error "Unknown selection type: %S" type))))) + ;; Most programs are unable to handle NUL bytes in strings. + (setq str (replace-regexp-in-string "\0" "\\0" str t t)) + (setq next-selection-coding-system nil) (cons type str)))) -- 2.11.1 --=-=-=--