From unknown Tue Aug 19 02:51:31 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#6214 <6214@debbugs.gnu.org> To: bug#6214 <6214@debbugs.gnu.org> Subject: Status: 23.1; json-read-string crashes emacs with long string Reply-To: bug#6214 <6214@debbugs.gnu.org> Date: Tue, 19 Aug 2025 09:51:31 +0000 retitle 6214 23.1; json-read-string crashes emacs with long string reassign 6214 emacs submitter 6214 Carl Worth severity 6214 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Tue May 18 12:35:56 2010 Received: (at submit) by debbugs.gnu.org; 18 May 2010 16:35:56 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEPlr-0000bQ-CJ for submit@debbugs.gnu.org; Tue, 18 May 2010 12:35:56 -0400 Received: from mx10.gnu.org ([199.232.76.166]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEPLY-0000NA-Ih for submit@debbugs.gnu.org; Tue, 18 May 2010 12:08:45 -0400 Received: from lists.gnu.org ([199.232.76.165]:41806) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1OEPLT-0008Jz-N4 for submit@debbugs.gnu.org; Tue, 18 May 2010 12:08:39 -0400 Received: from [140.186.70.92] (port=56333 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OEPLN-0006Rq-RX for bug-gnu-emacs@gnu.org; Tue, 18 May 2010 12:08:39 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable version=3.3.1 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OEPLK-0002K4-Bs for bug-gnu-emacs@gnu.org; Tue, 18 May 2010 12:08:33 -0400 Received: from u15218177.onlinehome-server.com ([82.165.184.25]:37995 helo=olra.theworths.org) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEPLK-0002Jf-6k for bug-gnu-emacs@gnu.org; Tue, 18 May 2010 12:08:30 -0400 Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 8DEEE4196F3; Tue, 18 May 2010 09:08:28 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7e0wKEkrUm-i; Tue, 18 May 2010 09:08:17 -0700 (PDT) Received: from yoom.home.cworth.org (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 7BA644196F0; Tue, 18 May 2010 09:08:17 -0700 (PDT) Received: by yoom.home.cworth.org (Postfix, from userid 1000) id 111F5568E21; Tue, 18 May 2010 09:08:17 -0700 (PDT) From: Carl Worth To: bug-gnu-emacs@gnu.org Subject: 23.1; json-read-string crashes emacs with long string User-Agent: Notmuch/0.3-7-g2baa576 (http://notmuchmail.org) Emacs/23.1.1 (i486-pc-linux-gnu) Date: Tue, 18 May 2010 09:08:17 -0700 Message-ID: <87pr0t5h1q.fsf@yoom.home.cworth.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -6.6 (------) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Tue, 18 May 2010 12:35:54 -0400 Cc: Notmuch mailing list , Carl Worth , Dirk Hohndel X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.6 (------) > Please describe exactly what actions triggered the bug > and the precise symptoms of the bug: A user of the emacs-based mail client, Notmuch [*], found that attempting to display a particular message would consistently causes a segmentation fault in emacs. I tracked this down to calling `json-read-string' with a very long string, (roughly 1 million characters). Rather than including that enormous string in this message, here's a little snippet of emacs lisp that creates and reads such a string. So, if evaluated, this code should trigger the segmentation fault, (assuming a copy of GPLv3 exists at /usr/share/emacs/23.1/etc/COPYING---adjust the filename if necessary). ;; Caution: Evaluating the block below has been known to crash emacs (with-temp-buffer (require 'json) ;; First we just need a lot of text. 32 copies of GPLv3 seems to do it (dotimes (i 32) (insert-file "/usr/share/emacs/23.1/etc/COPYING")) ;; Now create a buffer with a json-encoded version of the text (let ((json-string (json-encode-string (buffer-string)))) (with-temp-buffer (insert json-string) (goto-char (point-min)) ;; And try to read the string. This triggers the segfault. (json-read-string)))) > If Emacs crashed, and you have the Emacs process in the gdb debugger, > please include the output from the following gdb commands: > `bt full' and `xbacktrace'. I haven't attempted to debug this within gdb yet, (I'll have to get my hands on a build of emacs with debugging symbols first). But I wanted to share things right away, so that perhaps someone else could do further debugging and follow up. In the meantime, notmuch folks, if you've got a good idea for modifying notmuch to avoid this bug I'd be glad to hear it. Adjust followups to include the notmuch list and not the gnu.org bug address as appropriate. -Carl [*] http://notmuchmail.org PS. Here are some of the details provided by `report-emacs-bug': In GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.18.2) of 2010-01-26 on raven, modified by Debian Windowing system distributor `The X.Org Foundation', version 11.0.10799001 configured using `configure '--build=i486-linux-gnu' '--host=i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'host_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS='' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: en_US.UTF-8 value of $XMODIFIERS: nil locale-coding-system: utf-8-unix default-enable-multibyte-characters: t -- carl.d.worth@intel.com From debbugs-submit-bounces@debbugs.gnu.org Tue May 18 13:17:14 2010 Received: (at submit) by debbugs.gnu.org; 18 May 2010 17:17:14 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEQPq-0000ve-2N for submit@debbugs.gnu.org; Tue, 18 May 2010 13:17:14 -0400 Received: from mx10.gnu.org ([199.232.76.166]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEQPn-0000vY-Jo for submit@debbugs.gnu.org; Tue, 18 May 2010 13:17:12 -0400 Received: from lists.gnu.org ([199.232.76.165]:41221) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1OEQPi-00024d-VN for submit@debbugs.gnu.org; Tue, 18 May 2010 13:17:07 -0400 Received: from [140.186.70.92] (port=38689 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OEQPh-0005o8-Fj for bug-gnu-emacs@gnu.org; Tue, 18 May 2010 13:17:06 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_RP_MATCHES_RCVD, T_TO_NO_BRKTS_FREEMAIL autolearn=unavailable version=3.3.1 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OEQPf-0007aq-FJ for bug-gnu-emacs@gnu.org; Tue, 18 May 2010 13:17:05 -0400 Received: from lo.gmane.org ([80.91.229.12]:38351) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEQPe-0007Zy-Eo for bug-gnu-emacs@gnu.org; Tue, 18 May 2010 13:17:03 -0400 Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1OEQPZ-0003B8-RK for bug-gnu-emacs@gnu.org; Tue, 18 May 2010 19:16:57 +0200 Received: from smaug.linux.pwf.cam.ac.uk ([193.60.95.72]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 18 May 2010 19:16:57 +0200 Received: from sdl.web by smaug.linux.pwf.cam.ac.uk with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 18 May 2010 19:16:57 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: bug-gnu-emacs@gnu.org connect(): No such file or directory From: Leo Subject: Re: 23.1; json-read-string crashes emacs with long string Date: Tue, 18 May 2010 18:16:43 +0100 Organization: University of Cambridge Lines: 18 Message-ID: References: <87pr0t5h1q.fsf@yoom.home.cworth.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: smaug.linux.pwf.cam.ac.uk User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux) Cancel-Lock: sha1:ZsYPPKGUj1lnAYIX/WJExYRQnZs= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Spam-Score: -5.8 (-----) X-Debbugs-Envelope-To: submit Cc: notmuch@notmuchmail.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.8 (-----) On 2010-05-18 17:08 +0100, Carl Worth wrote: > ;; Caution: Evaluating the block below has been known to crash emacs > (with-temp-buffer > (require 'json) > ;; First we just need a lot of text. 32 copies of GPLv3 seems to do it > (dotimes (i 32) > (insert-file "/usr/share/emacs/23.1/etc/COPYING")) > ;; Now create a buffer with a json-encoded version of the text > (let ((json-string (json-encode-string (buffer-string)))) > (with-temp-buffer > (insert json-string) > (goto-char (point-min)) > ;; And try to read the string. This triggers the segfault. > (json-read-string)))) Crash emacs 23.2 too. Leo From debbugs-submit-bounces@debbugs.gnu.org Tue May 18 13:46:42 2010 Received: (at 6214) by debbugs.gnu.org; 18 May 2010 17:46:42 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEQsL-0001h4-IZ for submit@debbugs.gnu.org; Tue, 18 May 2010 13:46:42 -0400 Received: from dmz-mailsec-scanner-6.mit.edu ([18.7.68.35]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OEQpg-0001fA-9l for 6214@debbugs.gnu.org; Tue, 18 May 2010 13:43:57 -0400 X-AuditID: 12074423-b7c0bae0000030f0-e3-4bf2d1d7a0dd Received: from mailhub-auth-4.mit.edu (MAILHUB-AUTH-4.MIT.EDU [18.7.62.39]) by dmz-mailsec-scanner-6.mit.edu (Symantec Brightmail Gateway) with SMTP id B1.EA.12528.7D1D2FB4; Tue, 18 May 2010 13:43:51 -0400 (EDT) Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103]) by mailhub-auth-4.mit.edu (8.13.8/8.9.2) with ESMTP id o4IHhpRe012810 for <6214@debbugs.gnu.org>; Tue, 18 May 2010 13:43:51 -0400 Received: from PHANATIQUE.MIT.EDU (c-71-192-160-118.hsd1.nh.comcast.net [71.192.160.118]) (authenticated bits=0) (User authenticated as nelhage@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id o4IHhneM012313 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for <6214@debbugs.gnu.org>; Tue, 18 May 2010 13:43:51 -0400 (EDT) From: Nelson Elhage To: 6214@debbugs.gnu.org Subject: `bt full' output Date: Tue, 18 May 2010 13:43:49 -0400 Message-ID: <87iq6lhzqi.fsf@mit.edu> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Brightmail-Tracker: AAAAAgAHx0IUKTNi X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 6214 X-Mailman-Approved-At: Tue, 18 May 2010 13:46:39 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.3 (-) --=-=-= I can reproduce the bug, and got it in gdb with debug symbols. I'm running: GNU Emacs 23.1.1 (x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars) of 2010-03-26 on crested, modified by Debian Attached is the 'bt full' output from the SEGV after 'emacs --batch -l json-crash.el' --=-=-= Content-Disposition: inline; filename=bt Content-Description: 'bt full' from emacs segv (gdb) bt full #0 Fstring (n=1122176, args=0x7fffff76c348) at character.c:973 i = 0 p = 0x7fffff2124d0
c = 10 #1 0x000000000054aee1 in Ffuncall (nargs=, args=) at eval.c:3026 fun = original_fun = 11102209 funcar = numargs = 1122176 val = backtrace = { next = 0x7fffffffbfe0, function = 0x7fffff76c340, args = 0x7fffff76c348, nargs = 1122176, evalargs = 0 '\000', debug_on_exit = 0 '\000' } internal_args = 0x7fffff76c348 i = #2 0x000000000054c37e in Fapply (nargs=1, args=0x7fffffffc058) at eval.c:2533 ret_ungc_val = 10 i = numargs = spread_arg = 11008721 funcall_args = 0x7fffff76c340 fun = #3 0x000000000054aee1 in Ffuncall (nargs=, args=) at eval.c:3026 fun = original_fun = 11233665 funcar = numargs = 2 val = backtrace = { next = 0x7fffffffc270, function = 0x7fffffffc050, args = 0x7fffffffc058, nargs = 2, evalargs = 0 '\000', debug_on_exit = 0 '\000' } internal_args = 0x7fffffffc058 i = #4 0x0000000000582c12 in Fbyte_code (bytestr=, vector=, maxdepth=) at bytecode.c:678 count = 48 op = stack = { pc = 0xf8abd8 "\202|", top = 0x7fffffffc060, bottom = 0x7fffffffc050, byte_string = 17510211, byte_string_start = 0xf8ab60 "\303`f\211\030\206\t", constants = 16724260, next = 0x7fffffffd2b0 } top = 0x7fffffffc050 result = #5 0x000000000054cf4f in funcall_lambda (fun=13220372, nargs=, arg_vector=) at eval.c:3232 val = syms_left = 11008721 next = 0 i = 0 optional = 0 rest = 16208176 #6 0x000000000054d0c4 in apply_lambda (fun=13220372, args=11008721, eval_flag=) at eval.c:3156 args_left = 11008721 i = tem = #7 0x000000000054c773 in Feval (form=13220368) at eval.c:2436 fun = 10 val = original_fun = 17493889 original_args = 11008721 funcar = 10 backtrace = { next = 0x7fffffffc360, function = 0x7fffffffc2a0, args = 0x7fffffffc190, nargs = 0, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #8 0x000000000054cd27 in Fprogn (args=) at eval.c:450 val = 10 #9 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 10997029 i = argvals = {17369779, 8607304371, 11008721, 17564564, 17369747, 11008721, 1, 140737488340040} fun = val = original_fun = 11231505 original_args = 10997029 funcar = backtrace = { next = 0x7fffffffc460, function = 0x7fffffffc390, args = 0x7fffffffc388, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #10 0x000000000054d195 in Funwind_protect (args=11362421) at eval.c:1354 val = #11 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 11362421 i = argvals = {17564564, 5558095, 140737488340208, 5778450, 140737488340280, 17197238963, 16208176, 16209648} fun = val = original_fun = 11232225 original_args = 11362421 funcar = backtrace = { next = 0x7fffffffc570, function = 0x7fffffffc490, args = 0x7fffffffc488, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #12 0x000000000054cd27 in Fprogn (args=) at eval.c:450 val = 10 #13 0x000000000053f71d in Fsave_current_buffer (args=11359957) at editfns.c:1024 val = #14 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 11359957 i = argvals = {8526340, 15303857, 11361429, 11360789, 140737488340400, 5554887, 1, 2} fun = val = original_fun = 11306689 original_args = 11359957 funcar = backtrace = { next = 0x7fffffffc650, function = 0x7fffffffc5a0, args = 0x7fffffffc598, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #15 0x000000000054c91c in Feval (form=) at eval.c:2434 fun = val = original_fun = 11834817 original_args = 11360789 funcar = backtrace = { next = 0x7fffffffc7c0, function = 0x7fffffffc680, args = 0x7fffffffc678, nargs = -1, evalargs = 1 '\001', debug_on_exit = 0 '\000' } #16 0x000000000054cd27 in Fprogn (args=) at eval.c:450 val = 10 #17 0x000000000054d998 in Flet (args=11360453) at eval.c:1090 tem = 17564564 elt = varlist = #18 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 11360453 i = argvals = {8529660, 16856389, 16856341, 16856277, 140737488340992, 5554887, 2327040, 2} fun = val = original_fun = 11231937 original_args = 11360453 funcar = backtrace = { next = 0x7fffffffc8a0, function = 0x7fffffffc7f0, args = 0x7fffffffc7e8, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #19 0x000000000054c91c in Feval (form=) at eval.c:2434 fun = val = original_fun = 11835489 original_args = 16856357 funcar = backtrace = { next = 0x7fffffffca10, function = 0x7fffffffc8d0, args = 0x7fffffffc8c8, nargs = -1, evalargs = 1 '\001', debug_on_exit = 0 '\000' } #20 0x000000000054cd27 in Fprogn (args=) at eval.c:450 val = 10 #21 0x000000000054d998 in Flet (args=16856421) at eval.c:1090 tem = 76522627 elt = varlist = #22 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 16856421 i = argvals = {17493745, 11008721, 11008721, 11008721, 8529968, 5601525, 11008721, 5455855} fun = val = original_fun = 11231937 original_args = 16856421 funcar = backtrace = { next = 0x7fffffffcb00, function = 0x7fffffffca40, args = 0x7fffffffca38, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #23 0x000000000054cd27 in Fprogn (args=) at eval.c:450 val = 10 #24 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 16856085 i = argvals = {8529971, 8598464563, 11008721, 15652116, 17343363, 11866248, 11373969, 16758469} fun = val = original_fun = 11231505 original_args = 16856085 funcar = backtrace = { next = 0x7fffffffcc00, function = 0x7fffffffcb30, args = 0x7fffffffcb28, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #25 0x000000000054d195 in Funwind_protect (args=16886565) at eval.c:1354 val = #26 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 16886565 i = argvals = {15652116, 5558095, 140737488342160, 5778450, 140737488342232, 17188399155, 16208176, 16209520} fun = val = original_fun = 11232225 original_args = 16886565 funcar = backtrace = { next = 0x7fffffffcd10, function = 0x7fffffffcc30, args = 0x7fffffffcc28, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #27 0x000000000054cd27 in Fprogn (args=) at eval.c:450 val = 10 #28 0x000000000053f71d in Fsave_current_buffer (args=16886357) at editfns.c:1024 val = #29 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 16886357 i = argvals = {8526340, 17493937, 16886549, 16886517, 140737488342352, 5554887, 1, 2} fun = val = original_fun = 11306689 original_args = 16886357 funcar = backtrace = { next = 0x7fffffffcdf0, function = 0x7fffffffcd40, args = 0x7fffffffcd38, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #30 0x000000000054c91c in Feval (form=) at eval.c:2434 fun = val = original_fun = 11834817 original_args = 16886517 funcar = backtrace = { next = 0x7fffffffcf60, function = 0x7fffffffce20, args = 0x7fffffffce18, nargs = -1, evalargs = 1 '\001', debug_on_exit = 0 '\000' } #31 0x000000000054cd27 in Fprogn (args=) at eval.c:450 val = 10 #32 0x000000000054d998 in Flet (args=16886469) at eval.c:1090 tem = 15652116 elt = varlist = #33 0x000000000054cb1f in Feval (form=) at eval.c:2323 numargs = args_left = 16886469 i = argvals = {8529660, 16856741, 16856661, 16856533, 140737488342944, 5554887, 140737488343728, 2} fun = val = original_fun = 11231937 original_args = 16886469 funcar = backtrace = { next = 0x7fffffffd040, function = 0x7fffffffcf90, args = 0x7fffffffcf88, nargs = -1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #34 0x000000000054c91c in Feval (form=) at eval.c:2434 fun = val = original_fun = 11835489 original_args = 16856677 funcar = backtrace = { next = 0x7fffffffd1f0, function = 0x7fffffffd070, args = 0x7fffffffd068, nargs = -1, evalargs = 1 '\001', debug_on_exit = 0 '\000' } #35 0x000000000056fa56 in readevalloop (readcharfun=14353796, stream=0x0, sourcename=17342723, evalfun=, printflag=, unibyte=, readfun=11008721, start=11008721, end=11008721) at lread.c:1785 count1 = 41 c = val = 0 b = 0xdb0580 continue_reading_p = 1 whole_buffer = 1 first_sexp = #36 0x000000000056fd4e in Feval_buffer (buffer=, printflag=11008721, filename=17508755, unibyte=11008721, do_allow_print=) at lread.c:1846 tem = buf = 14353796 #37 0x000000000054ae17 in Ffuncall (nargs=, args=) at eval.c:3059 fun = original_fun = funcar = numargs = 5 val = backtrace = { next = 0x7fffffffd3c0, function = 0x7fffffffd260, args = 0x7fffffffd268, nargs = 5, evalargs = 0 '\000', debug_on_exit = 0 '\000' } internal_args = 0x7fffffffd268 i = 5 #38 0x0000000000582c12 in Fbyte_code (bytestr=, vector=, maxdepth=) at bytecode.c:678 count = 28 op = stack = { pc = 0x9f3e46 "\210,\016$\204\231", top = 0x7fffffffd288, bottom = 0x7fffffffd260, byte_string = 8579483, byte_string_start = 0x9f3db8 "\306\b!\204\022", constants = 8579516, next = 0x7fffffffd780 } top = 0x7fffffffd260 result = #39 0x000000000054cf4f in funcall_lambda (fun=8579348, nargs=, arg_vector=) at eval.c:3232 val = syms_left = 11008721 next = 11905841 i = 4 optional = 1 rest = 0 #40 0x000000000054ac83 in Ffuncall (nargs=, args=0x82e910) at eval.c:3102 fun = 10 original_fun = 11905697 funcar = 10 numargs = 4 val = backtrace = { next = 0x7fffffffd6a0, function = 0x7fffffffd430, args = 0x7fffffffd438, nargs = 4, evalargs = 0 '\000', debug_on_exit = 0 '\000' } internal_args = 0x7fffffffd438 i = #41 0x000000000054b049 in call4 (fn=, arg1=, arg2=0, arg3=4611686018427404288, arg4=0) at eval.c:2895 ret_ungc_val = 10 args = {11905697, 17508755, 17508755, 11008721, 11008817} #42 0x0000000000570c81 in Fload (file=17459939, noerror=4611686018427404288, nomessage=0, nosuffix=, must_suffix=) at lread.c:1208 val = stream = fd = 5 count = 21 found = 17508755 efound = hist_file_name = 17508755 newer = 0 compiled = 0 handler = safe_p = 16208848 tmp = {16859509, 12070965} version = 0 #43 0x000000000054ae17 in Ffuncall (nargs=, args=) at eval.c:3059 fun = original_fun = funcar = numargs = 5 val = backtrace = { next = 0x7fffffffd890, function = 0x7fffffffd710, args = 0x7fffffffd718, nargs = 3, evalargs = 0 '\000', debug_on_exit = 0 '\000' } internal_args = 0x7fffffffd650 i = 5 #44 0x0000000000582c12 in Fbyte_code (bytestr=, vector=, maxdepth=) at bytecode.c:678 count = 6 op = stack = { pc = 0x9d8d0d "\210*\202\276\003\016K\ub743#\002\347\016M\206\016\002\f\211A\024@!\036R\346\016R!\036S\352\016S\314\u0649$\210*\202\276\003\016K\uc683L\002\331\026P\016M\206\067\002\f\211A\024@\211\026F;\204B\002\333\355!\210\356\347\016F!!\210\202\276\003\016K\uf683Z\002\360\331!\210\202\276\003\016K\361\232\203h\002\362\363!\210\202\276\003\321\364\016K\"\203y\002\365\016K!\026B\202\276\003\321\366\016K\"\203\226\002\365\325\326\016K\"!\026B\365\325\367\016K\"!\026A\202\276\003\332\016K\016H\"\211\026F\203\254\002\016FA@\f\233\024\202\276\003\332\016K\016J\"\211\026F\203\302\002\016FA@\f\233\024"..., top = 0x7fffffffd728, bottom = 0x7fffffffd710, byte_string = 8939563, byte_string_start = 0x9d8b16 "\306 \210\b\203\021", constants = 8939596, next = 0x7fffffffd960 } top = 0x7fffffffd710 result = #45 0x000000000054cf4f in funcall_lambda (fun=8939500, nargs=, arg_vector=) at eval.c:3232 val = syms_left = 11008721 next = 12273265 i = 1 optional = 0 rest = 0 #46 0x000000000054ac83 in Ffuncall (nargs=, args=0x8867e8) at eval.c:3102 fun = 10 original_fun = 12489681 funcar = 10 numargs = 1 val = backtrace = { next = 0x7fffffffda70, function = 0x7fffffffd900, args = 0x7fffffffd908, nargs = 1, evalargs = 0 '\000', debug_on_exit = 0 '\000' } internal_args = 0x7fffffffd908 i = #47 0x0000000000582c12 in Fbyte_code (bytestr=, vector=, maxdepth=) at bytecode.c:678 count = 5 op = stack = { pc = 0x9db48d "\210\016L\203\060\006\201", , top = 0x7fffffffd908, bottom = 0x7fffffffd900, byte_string = 8912619, byte_string_start = 0x9dae69 "\306 \020\307\021\n\023\310\311!\210\310\312!\210\310\313!\210\314\315!\211\034\307=\204;", constants = 8912652, next = 0x7fffffffdb30 } top = 0x7fffffffd900 result = #48 0x000000000054cf4f in funcall_lambda (fun=8912572, nargs=, arg_vector=) at eval.c:3232 val = syms_left = 11008721 next = 12600881 i = 0 optional = 0 rest = 1 #49 0x000000000054ac83 in Ffuncall (nargs=, args=0x87feb8) at eval.c:3102 fun = 10 original_fun = 12600881 funcar = 10 numargs = 0 val = backtrace = { next = 0x7fffffffdd00, function = 0x7fffffffdae0, args = 0x7fffffffdae8, nargs = 0, evalargs = 0 '\000', debug_on_exit = 0 '\000' } internal_args = 0x7fffffffdae8 i = #50 0x0000000000582c12 in Fbyte_code (bytestr=, vector=, maxdepth=) at bytecode.c:678 count = 2 op = stack = { pc = 0x9dbd46 "\210+\340\341\342\"\210\343\321\344\"\211\036$;\203\254", top = 0x7fffffffdae0, bottom = 0x7fffffffdae0, byte_string = 8905939, byte_string_start = 0x9dbcb5 "\b\203\b", constants = 8905972, next = 0x0 } top = 0x7fffffffdae0 result = #51 0x000000000054cf4f in funcall_lambda (fun=8905892, nargs=, arg_vector=) at eval.c:3232 val = syms_left = 11008721 next = 0 i = 0 optional = 0 rest = 1 #52 0x000000000054d0c4 in apply_lambda (fun=8905892, args=11008721, eval_flag=) at eval.c:3156 args_left = 11008721 i = tem = #53 0x000000000054c773 in Feval (form=8905888) at eval.c:2436 fun = 10 val = original_fun = 12596913 original_args = 11008721 funcar = 10 backtrace = { next = 0x0, function = 0x7fffffffdd30, args = 0x7fffffffdc20, nargs = 0, evalargs = 0 '\000', debug_on_exit = 0 '\000' } #54 0x000000000054a17f in internal_condition_case (bfun=, handlers=, hfun=) at eval.c:1512 val = 10 c = { tag = 11008721, val = 11008721, next = 0x7fffffffdf10, gcpro = 0x0, jmp = {{ __jmpbuf = {11863808, 7856162650753843797, 11863840, 140737488347976, 1, 1, -7856163570770263467, 7856164021722006101}, __mask_was_saved = 0, __saved_mask = { __val = {4294967295, 140737274889536, 140737353947568, 17, 4294967295, 17, 0, 11863840, 140737488347976, 1, 1, 8355624, 140737351963084, 1, 0, 0} } }}, backlist = 0x0, handlerlist = 0x0, lisp_eval_depth = 0, pdlcount = 2, poll_suppress_count = 1, interrupt_input_blocked = 0, byte_stack = 0x0 } h = { handler = 11095681, var = 11008721, chosen_clause = 11008721, tag = 0x7fffffffdda0, next = 0x0 } #55 0x00000000004df736 in top_level_1 () at keyboard.c:1376 No locals. #56 0x000000000054a2aa in internal_catch (tag=, func=, arg=) at eval.c:1248 c = { tag = 11077073, val = 11008721, next = 0x0, gcpro = 0x0, jmp = {{ __jmpbuf = {11863808, 7856162650753843797, 11863840, 140737488347976, 1, 1, -7856163570686377387, 7856164021742453333}, __mask_was_saved = 0, __saved_mask = { __val = {0, 0, 0, 0, 0, 0, 0, 0, 11008721, 11429745, 11048784, 11008769, 11421568, 1, 5485754, 11429745} } }}, backlist = 0x0, handlerlist = 0x0, lisp_eval_depth = 0, pdlcount = 2, poll_suppress_count = 1, interrupt_input_blocked = 0, byte_stack = 0x0 } #57 0x00000000004df7b9 in command_loop () at keyboard.c:1331 No locals. #58 0x00000000004dfbcc in recursive_edit_1 () at keyboard.c:953 val = #59 0x00000000004dfd07 in Frecursive_edit () at keyboard.c:1015 buffer = 11008721 #60 0x00000000004d5777 in main (argc=0, argv=0x7fffffffe488) at emacs.c:1852 dummy = 0 stack_bottom_variable = 0 '\000' do_initial_setlocale = skip_args = 1 rlim = { rlim_cur = 8720000, rlim_max = 18446744073709551615 } no_loadup = 0 junk = 0x0 dname_arg = 0x0 Lisp Backtrace: "string" (0xff76c348) "apply" (0xffffc058) "json-read-string" (0xffffc190) "progn" (0xffffc388) "unwind-protect" (0xffffc488) "save-current-buffer" (0xffffc598) "with-current-buffer" (0xffffc678) "let" (0xffffc7e8) "with-temp-buffer" (0xffffc8c8) "let" (0xffffca38) "progn" (0xffffcb28) "unwind-protect" (0xffffcc28) "save-current-buffer" (0xffffcd38) "with-current-buffer" (0xffffce18) "let" (0xffffcf88) "with-temp-buffer" (0xffffd068) "eval-buffer" (0xffffd268) "load-with-code-conversion" (0xffffd438) "load" (0xffffd718) "command-line-1" (0xffffd908) "command-line" (0xffffdae8) "normal-top-level" (0xffffdc20) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Tue May 18 14:07:18 2010 Received: (at 6214-done) by debbugs.gnu.org; 18 May 2010 18:07:18 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OERCI-0001qh-FK for submit@debbugs.gnu.org; Tue, 18 May 2010 14:07:18 -0400 Received: from pantheon-po17.its.yale.edu ([130.132.50.73]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OERCG-0001qb-GN for 6214-done@debbugs.gnu.org; Tue, 18 May 2010 14:07:16 -0400 Received: from furry (dhcp128036014213.central.yale.edu [128.36.14.213]) (authenticated bits=0) by pantheon-po17.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o4II7AfM031273 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 18 May 2010 14:07:10 -0400 Received: by furry (Postfix, from userid 1000) id A7B5AC057; Tue, 18 May 2010 14:07:10 -0400 (EDT) From: Chong Yidong To: Carl Worth Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> Date: Tue, 18 May 2010 14:07:10 -0400 In-Reply-To: <87pr0t5h1q.fsf@yoom.home.cworth.org> (Carl Worth's message of "Tue, 18 May 2010 09:08:17 -0700") Message-ID: <87fx1pkrsh.fsf@stupidchicken.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -2.7 (--) X-Debbugs-Envelope-To: 6214-done Cc: Notmuch mailing list , 6214-done@debbugs.gnu.org, Dirk Hohndel X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.7 (--) Carl Worth writes: > A user of the emacs-based mail client, Notmuch [*], found that > attempting to display a particular message would consistently > causes a segmentation fault in emacs. > > I haven't attempted to debug this within gdb yet, (I'll have to get my > hands on a build of emacs with debugging symbols first). But I wanted to > share things right away, so that perhaps someone else could do further > debugging and follow up. Looks like a stack overflow in the `string' function. I've checked in a fix, thanks for the bug report. From debbugs-submit-bounces@debbugs.gnu.org Tue May 18 15:16:01 2010 Received: (at 6214) by debbugs.gnu.org; 18 May 2010 19:16:01 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OESGm-0002wi-UQ for submit@debbugs.gnu.org; Tue, 18 May 2010 15:16:01 -0400 Received: from u15218177.onlinehome-server.com ([82.165.184.25] helo=olra.theworths.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OESGk-0002wd-DI for 6214@debbugs.gnu.org; Tue, 18 May 2010 15:15:58 -0400 Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id D7A114196F4 for <6214@debbugs.gnu.org>; Tue, 18 May 2010 12:15:53 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id zM1OhwZ-rpDD; Tue, 18 May 2010 12:15:43 -0700 (PDT) Received: from yoom.home.cworth.org (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id A6D454196F2; Tue, 18 May 2010 12:15:43 -0700 (PDT) Received: by yoom.home.cworth.org (Postfix, from userid 1000) id 52337568E21; Tue, 18 May 2010 12:15:43 -0700 (PDT) From: Carl Worth To: 6214@debbugs.gnu.org Subject: Re: bug#6214: closed (Re: bug#6214: 23.1; json-read-string crashes emacs with long string) In-Reply-To: References: <87fx1pkrsh.fsf@stupidchicken.com> <87pr0t5h1q.fsf@yoom.home.cworth.org> User-Agent: Notmuch/0.3-7-g2baa576 (http://notmuchmail.org) Emacs/23.1.1 (i486-pc-linux-gnu) Date: Tue, 18 May 2010 12:15:43 -0700 Message-ID: <87k4r158dc.fsf@yoom.home.cworth.org> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" X-Spam-Score: -4.6 (----) X-Debbugs-Envelope-To: 6214 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.9 (---) --=-=-= On Tue, 18 May 2010 18:08:02 +0000, help-debbugs@gnu.org (GNU bug Tracking System) wrote: > The explanation is attached below, along with your original report. > If you require more details, please reply to 6214@debbugs.gnu.org. ... > Looks like a stack overflow in the `string' function. I've checked in a > fix, thanks for the bug report. Thanks for the quick fix! I'd be interested in seeing the actual patch here. So let me know if/when you can email it to me or point me to a publicly-visible repository that contains it. Thanks again, -Carl --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iD8DBQFL8udf6JDdNq8qSWgRApYuAJ9x72/KQNjahL+84hxX6lvsZBGQ5gCeNEkn KuUaMnOCgns1NDB6Lcy0mCA= =gHKD -----END PGP SIGNATURE----- --=-=-=-- From unknown Tue Aug 19 02:51:31 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 16 Jun 2010 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator From debbugs-submit-bounces@debbugs.gnu.org Thu Aug 12 17:52:27 2010 Received: (at control) by debbugs.gnu.org; 12 Aug 2010 21:52:27 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OjfhK-0001B4-Dn for submit@debbugs.gnu.org; Thu, 12 Aug 2010 17:52:26 -0400 Received: from max.feld.cvut.cz ([147.32.192.36]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OjffY-00019m-O1 for control@debbugs.gnu.org; Thu, 12 Aug 2010 17:50:37 -0400 Received: from localhost (unknown [192.168.200.4]) by max.feld.cvut.cz (Postfix) with ESMTP id 36CE619F3319 for ; Thu, 12 Aug 2010 23:51:26 +0200 (CEST) X-Virus-Scanned: IMAP AMAVIS Received: from max.feld.cvut.cz ([192.168.200.1]) by localhost (styx.feld.cvut.cz [192.168.200.4]) (amavisd-new, port 10044) with ESMTP id 00M4fyVBwhez for ; Thu, 12 Aug 2010 23:51:25 +0200 (CEST) Received: from imap.feld.cvut.cz (imap.feld.cvut.cz [147.32.192.34]) by max.feld.cvut.cz (Postfix) with ESMTP id EB9AC19F330A for ; Thu, 12 Aug 2010 23:51:24 +0200 (CEST) Received: from steelpick.2x.cz (unknown [213.29.198.144]) (Authenticated sender: sojkam1) by imap.feld.cvut.cz (Postfix) with ESMTPSA id D25C7FA005 for ; Thu, 12 Aug 2010 23:51:24 +0200 (CEST) Received: from wsh by steelpick.2x.cz with local (Exim 4.72) (envelope-from ) id 1OjfgJ-0006Za-T2 for control@debbugs.gnu.org; Thu, 12 Aug 2010 23:51:24 +0200 From: Michal Sojka To: control@debbugs.gnu.org Subject: User-Agent: Notmuch/0.3.1-80-g86b7c46 (http://notmuchmail.org) Emacs/23.2.1 (x86_64-pc-linux-gnu) Date: Thu, 12 Aug 2010 23:51:19 +0200 Message-ID: <87wrrvv6so.fsf@steelpick.2x.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -0.8 (/) X-Debbugs-Envelope-To: control X-Mailman-Approved-At: Thu, 12 Aug 2010 17:52:25 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: 0.3 (/) unarchive 6214 From debbugs-submit-bounces@debbugs.gnu.org Thu Aug 12 17:58:04 2010 Received: (at 6214) by debbugs.gnu.org; 12 Aug 2010 21:58:04 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ojfml-0001E5-MH for submit@debbugs.gnu.org; Thu, 12 Aug 2010 17:58:04 -0400 Received: from max.feld.cvut.cz ([147.32.192.36]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ojfmi-0001Dj-4e for 6214@debbugs.gnu.org; Thu, 12 Aug 2010 17:58:01 -0400 Received: from localhost (unknown [192.168.200.4]) by max.feld.cvut.cz (Postfix) with ESMTP id CC32319F330A; Thu, 12 Aug 2010 23:58:49 +0200 (CEST) X-Virus-Scanned: IMAP AMAVIS Received: from max.feld.cvut.cz ([192.168.200.1]) by localhost (styx.feld.cvut.cz [192.168.200.4]) (amavisd-new, port 10044) with ESMTP id 9V22JW5MY3Dh; Thu, 12 Aug 2010 23:58:47 +0200 (CEST) Received: from imap.feld.cvut.cz (imap.feld.cvut.cz [147.32.192.34]) by max.feld.cvut.cz (Postfix) with ESMTP id B5BBC19F3306; Thu, 12 Aug 2010 23:58:47 +0200 (CEST) Received: from steelpick.2x.cz (unknown [213.29.198.144]) (Authenticated sender: sojkam1) by imap.feld.cvut.cz (Postfix) with ESMTPSA id 14B21FA005; Thu, 12 Aug 2010 23:58:46 +0200 (CEST) Received: from wsh by steelpick.2x.cz with local (Exim 4.72) (envelope-from ) id 1OjfnS-0006cZ-Dj; Thu, 12 Aug 2010 23:58:46 +0200 From: Michal Sojka To: Chong Yidong , Carl Worth Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string In-Reply-To: <87fx1pkrsh.fsf@stupidchicken.com> References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> User-Agent: Notmuch/0.3.1-80-g86b7c46 (http://notmuchmail.org) Emacs/23.2.1 (x86_64-pc-linux-gnu) Date: Thu, 12 Aug 2010 23:58:45 +0200 Message-ID: <87tymzv6ga.fsf@steelpick.2x.cz> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.2 (-) --=-=-= On Tue, 18 May 2010, Chong Yidong wrote: > Looks like a stack overflow in the `string' function. I've checked in a > fix, thanks for the bug report. It seems the bug is still in the current Emacs HEAD (http://repo.or.cz/w/emacs.git/commit/08d1bfbda3ef4a7038556f6c56bec1a37b4721f0). I can reproduce it with the lisp code sent by Carl, but the backtrace is different. My backtrace is attached. Thanks Michal --=-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: inline; filename=gdb.txt Content-Transfer-Encoding: quoted-printable #0 0x0000000000566739 in Fapply (nargs=3D2, args=3D0x7fffffffbcf8) at eval= .c:2492 i =3D 8997664 numargs =3D spread_arg =3D 12020694 funcall_args =3D 0x7fffff767100 fun =3D #1 0x0000000000565135 in Ffuncall (nargs=3D, args=3D<= value optimized out>) at eval.c:2964 fun =3D original_fun =3D 11891218 funcar =3D numargs =3D 2 val =3D backtrace =3D { next =3D 0x7fffffffbf00,=20 function =3D 0x7fffffffbcf0,=20 args =3D 0x7fffffffbcf8,=20 nargs =3D 2,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x7fffffffbcf8 i =3D #2 0x000000000059ecd2 in Fbyte_code (bytestr=3D, vect= or=3D, maxdepth=3D) at bytecode.c= :679 count =3D 47 op =3D stack =3D { pc =3D 0xea5250 "\202|",=20 top =3D 0x7fffffffbd00,=20 bottom =3D 0x7fffffffbcf0,=20 byte_string =3D 18230033,=20 byte_string_start =3D 0xea51d8 "\303`f\211\030\206\t",=20 constants =3D 18231925,=20 next =3D 0x7fffffffce20 } top =3D 0x7fffffffbcf0 result =3D #3 0x00000000005672ef in funcall_lambda (fun=3D18232277, nargs=3D, arg_vector=3D) at eval.c:3165 val =3D syms_left =3D 11721042 next =3D 0 i =3D 0 optional =3D 0 rest =3D 0 #4 0x0000000000567454 in apply_lambda (fun=3D18232277, args=3D11721042, ev= al_flag=3D) at eval.c:3092 args_left =3D 11721042 i =3D tem =3D #5 0x0000000000566b53 in Feval (form=3D18232272) at eval.c:2408 fun =3D 140737479340288 val =3D original_fun =3D 17897138 original_args =3D 11721042 funcar =3D 8997664 backtrace =3D { next =3D 0x7fffffffbfe0,=20 function =3D 0x7fffffffbf28,=20 args =3D 0x7fffffffbe30,=20 nargs =3D 0,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #6 0x00000000005670c7 in Fprogn (args=3D) at eval.c:3= 95 val =3D 8997664 #7 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 11697014 i =3D argvals =3D {11721042, 74852149, 74124673, 11721042, 1, 14073748833= 9112, 140737488338912, 5892710} fun =3D val =3D original_fun =3D 11890130 original_args =3D 11697014 funcar =3D backtrace =3D { next =3D 0x7fffffffc0d0,=20 function =3D 0x7fffffffc008,=20 args =3D 0x7fffffffc000,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #8 0x0000000000567505 in Funwind_protect (args=3D11695302) at eval.c:1304 val =3D #9 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 11695302 i =3D argvals =3D {74852149, 5665519, 74852149, 74124801, 140737488339352= , 21480469067, 17767008, 17768448} fun =3D val =3D original_fun =3D 11890930 original_args =3D 11695302 funcar =3D backtrace =3D { next =3D 0x7fffffffc1d0,=20 function =3D 0x7fffffffc0f8,=20 args =3D 0x7fffffffc0f0,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #10 0x00000000005670c7 in Fprogn (args=3D) at eval.c:3= 95 val =3D 8997664 #11 0x000000000055951d in Fsave_current_buffer (args=3D11693078) at editfns= .c:1012 val =3D #12 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 11693078 i =3D argvals =3D {8633005, 18237426, 11695062, 11695030, 140737488339456= , 5662408, 1, 2} fun =3D val =3D original_fun =3D 11928034 original_args =3D 11693078 funcar =3D backtrace =3D { next =3D 0x7fffffffc2a0,=20 function =3D 0x7fffffffc1f8,=20 args =3D 0x7fffffffc1f0,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #13 0x0000000000566cec in Feval (form=3D) at eval.c:24= 06 fun =3D val =3D original_fun =3D 12595842 original_args =3D 11695030 funcar =3D backtrace =3D { next =3D 0x7fffffffc3f0,=20 function =3D 0x7fffffffc2c8,=20 args =3D 0x7fffffffc2c0,=20 nargs =3D -1,=20 evalargs =3D 1 '\001',=20 debug_on_exit =3D 0 '\000' } #14 0x00000000005670c7 in Fprogn (args=3D) at eval.c:3= 95 val =3D 8997664 #15 0x0000000000567d08 in Flet (args=3D11694902) at eval.c:1051 tem =3D 74852149 elt =3D varlist =3D #16 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 11694902 i =3D argvals =3D {8635685, 18755398, 18755446, 18755510, 140737488340000= , 5662408, 1, 2} fun =3D val =3D original_fun =3D 11890562 original_args =3D 11694902 funcar =3D backtrace =3D { next =3D 0x7fffffffc4c0,=20 function =3D 0x7fffffffc418,=20 args =3D 0x7fffffffc410,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #17 0x0000000000566cec in Feval (form=3D) at eval.c:24= 06 fun =3D val =3D original_fun =3D 12606802 original_args =3D 18755430 funcar =3D backtrace =3D { next =3D 0x7fffffffc610,=20 function =3D 0x7fffffffc4e8,=20 args =3D 0x7fffffffc4e0,=20 nargs =3D -1,=20 evalargs =3D 1 '\001',=20 debug_on_exit =3D 0 '\000' } #18 0x00000000005670c7 in Fprogn (args=3D) at eval.c:3= 95 val =3D 8997664 #19 0x0000000000567d08 in Flet (args=3D18755366) at eval.c:1051 tem =3D 74125073 elt =3D varlist =3D #20 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 18755366 i =3D argvals =3D {17896994, 11721042, 11721042, 5561631, 140737488340688= , 5708090, 41, 0} fun =3D val =3D original_fun =3D 11890562 original_args =3D 18755366 funcar =3D backtrace =3D { next =3D 0x7fffffffc6f0,=20 function =3D 0x7fffffffc638,=20 args =3D 0x7fffffffc630,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #21 0x00000000005670c7 in Fprogn (args=3D) at eval.c:3= 95 val =3D 8997664 #22 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 18752566 i =3D argvals =3D {11721042, 15322325, 15321809, 11721042, 1, 14073748834= 0920, 140737488340720, 17986768} fun =3D val =3D original_fun =3D 11890130 original_args =3D 18752566 funcar =3D backtrace =3D { next =3D 0x7fffffffc7e0,=20 function =3D 0x7fffffffc718,=20 args =3D 0x7fffffffc710,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #23 0x0000000000567505 in Funwind_protect (args=3D18752758) at eval.c:1304 val =3D #24 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 18752758 i =3D argvals =3D {15322325, 5665519, 15322325, 8618505, 140737488341160,= 21474836480, 17767008, 17768320} fun =3D val =3D original_fun =3D 11890930 original_args =3D 18752758 funcar =3D backtrace =3D { next =3D 0x7fffffffc8e0,=20 function =3D 0x7fffffffc808,=20 args =3D 0x7fffffffc800,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #25 0x00000000005670c7 in Fprogn (args=3D) at eval.c:3= 95 val =3D 8997664 #26 0x000000000055951d in Fsave_current_buffer (args=3D18752966) at editfns= .c:1012 val =3D #27 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 18752966 i =3D argvals =3D {8633005, 17897186, 18752774, 18752806, 140737488341264= , 5662408, 1, 2} fun =3D val =3D original_fun =3D 11928034 original_args =3D 18752966 funcar =3D backtrace =3D { next =3D 0x7fffffffc9b0,=20 function =3D 0x7fffffffc908,=20 args =3D 0x7fffffffc900,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #28 0x0000000000566cec in Feval (form=3D) at eval.c:24= 06 fun =3D val =3D original_fun =3D 12595842 original_args =3D 18752806 funcar =3D backtrace =3D { next =3D 0x7fffffffcb00,=20 function =3D 0x7fffffffc9d8,=20 args =3D 0x7fffffffc9d0,=20 nargs =3D -1,=20 evalargs =3D 1 '\001',=20 debug_on_exit =3D 0 '\000' } #29 0x00000000005670c7 in Fprogn (args=3D) at eval.c:3= 95 val =3D 8997664 #30 0x0000000000567d08 in Flet (args=3D18752854) at eval.c:1051 tem =3D 15322325 elt =3D varlist =3D #31 0x0000000000566ec4 in Feval (form=3D) at eval.c:22= 95 numargs =3D 8997664 args_left =3D 18752854 i =3D argvals =3D {8635685, 18755046, 18755126, 18755254, 140737488341808= , 5662408, 11739872, 2} fun =3D val =3D original_fun =3D 11890562 original_args =3D 18752854 funcar =3D backtrace =3D { next =3D 0x7fffffffcbd0,=20 function =3D 0x7fffffffcb28,=20 args =3D 0x7fffffffcb20,=20 nargs =3D -1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #32 0x0000000000566cec in Feval (form=3D) at eval.c:24= 06 fun =3D val =3D original_fun =3D 12606802 original_args =3D 18755110 funcar =3D backtrace =3D { next =3D 0x7fffffffcd70,=20 function =3D 0x7fffffffcbf8,=20 args =3D 0x7fffffffcbf0,=20 nargs =3D -1,=20 evalargs =3D 1 '\001',=20 debug_on_exit =3D 0 '\000' } #33 0x000000000058ae4f in readevalloop (readcharfun=3D18093061, stream=3D0x= 0, sourcename=3D18361409, printflag=3D, unibyte=3D, readfun=3D, start=3D11721042, end= =3D11721042,=20 evalfun=3D) at lread.c:1739 count1 =3D 40 c =3D val =3D b =3D 0x1141400 continue_reading_p =3D 1 whole_buffer =3D 1 first_sexp =3D #34 0x000000000058bb71 in Feval_buffer (buffer=3D, pri= ntflag=3D11721042, filename=3D15002881, unibyte=3D11721042, do_allow_print= =3D) at lread.c:1799 tem =3D buf =3D 18093061 #35 0x0000000000565073 in Ffuncall (nargs=3D, args=3D<= value optimized out>) at eval.c:2997 fun =3D original_fun =3D funcar =3D numargs =3D 5 val =3D backtrace =3D { next =3D 0x7fffffffcf30,=20 function =3D 0x7fffffffcdd0,=20 args =3D 0x7fffffffcdd8,=20 nargs =3D 5,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x7fffffffcdd8 i =3D 5 #36 0x000000000059ecd2 in Fbyte_code (bytestr=3D, vect= or=3D, maxdepth=3D) at bytecode.c= :679 count =3D 27 op =3D stack =3D { pc =3D 0xaa6e3a "\210,\336\b!\210\016\"\204\256",=20 top =3D 0x7fffffffcdf8,=20 bottom =3D 0x7fffffffcdd0,=20 byte_string =3D 8682273,=20 byte_string_start =3D 0xaa6dae "\306\b!\204\022",=20 constants =3D 8682309,=20 next =3D 0x7fffffffd2c0 } top =3D 0x7fffffffcdd0 result =3D #37 0x00000000005672ef in funcall_lambda (fun=3D8682141, nargs=3D, arg_vector=3D) at eval.c:3165 val =3D syms_left =3D 11721042 next =3D 12593154 i =3D 4 optional =3D 1 rest =3D 0 #38 0x0000000000564f03 in Ffuncall (nargs=3D, args=3D0= x847a98) at eval.c:3040 fun =3D 140737479340288 original_fun =3D 12593010 funcar =3D 8997664 numargs =3D 4 val =3D backtrace =3D { next =3D 0x7fffffffd1f0,=20 function =3D 0x7fffffffcf90,=20 args =3D 0x7fffffffcf98,=20 nargs =3D 4,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x7fffffffcf98 i =3D #39 0x00000000005652d9 in call4 (fn=3D, arg1=3D, arg2=3D16, arg3=3D8473480, arg4=3D0) at eval.c:2831 ret_ungc_val =3D 8997664 args =3D {12593010, 15002881, 15002881, 11721042, 11721090} #40 0x000000000058b71d in Fload (file=3D18663777, noerror=3D8473480, nomess= age=3D11721090, nosuffix=3D, must_suffix=3D) at lread.c:1183 val =3D stream =3D fd =3D 5 count =3D 20 found =3D 15002881 efound =3D hist_file_name =3D 15002881 newer =3D 0 compiled =3D 17487280 handler =3D safe_p =3D 17767648 tmp =3D {18737654, 13154870} version =3D 0 #41 0x0000000000565073 in Ffuncall (nargs=3D, args=3D<= value optimized out>) at eval.c:2997 fun =3D original_fun =3D funcar =3D numargs =3D 5 val =3D backtrace =3D { next =3D 0x7fffffffd3d0,=20 function =3D 0x7fffffffd250,=20 args =3D 0x7fffffffd258,=20 nargs =3D 3,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x7fffffffd1a0 i =3D 5 #42 0x000000000059ecd2 in Fbyte_code (bytestr=3D, vect= or=3D, maxdepth=3D) at bytecode.c= :679 count =3D 5 op =3D stack =3D { pc =3D 0xa88814 "\210*\202\300\003\016L=EB=9D=83!\002\347\016N\20= 6\f\002\f\211A\024@!\036S\346\016S!\036T\352\016T\314=D9=89$\210*\202\300\0= 03\016L=EC=9A=83J\002\331\026Q\016N\206\065\002\f\211A\024@\211\026F;\204@\= 002\332\355!\210\356\347\016F!!\210\202\300\003\016L=EF=9A=83X\002\360\331!= \210\202\300\003\016L\361\232\203f\002\362\363!\210\202\300\003\321\364\016= L\"\203w\002\365\016L!\026B\202\300\003\321\366\016L\"\203\224\002\365\325\= 326\016L\"!\026B\365\325\367\016L\"!\026A\202\300\003\334\016M\016H\"\211\0= 26F\203\252\002\016FA@\f\233\024\202\300\003\334\016M\016K\"\211\026F\203\3= 00\002\016FA@\f\233\024"...,=20 top =3D 0x7fffffffd268,=20 bottom =3D 0x7fffffffd250,=20 byte_string =3D 9032857,=20 byte_string_start =3D 0xa8861f "\306 \210\b\203\021",=20 constants =3D 9032893,=20 next =3D 0x7fffffffd490 } top =3D 0x7fffffffd250 result =3D #43 0x00000000005672ef in funcall_lambda (fun=3D9032797, nargs=3D, arg_vector=3D) at eval.c:3165 val =3D syms_left =3D 11721042 next =3D 13750050 i =3D 1 optional =3D 0 rest =3D 0 #44 0x0000000000564f03 in Ffuncall (nargs=3D, args=3D0= x89d458) at eval.c:3040 fun =3D 140737479340288 original_fun =3D 13756226 funcar =3D 8997664 numargs =3D 1 val =3D backtrace =3D { next =3D 0x7fffffffd5a0,=20 function =3D 0x7fffffffd430,=20 args =3D 0x7fffffffd438,=20 nargs =3D 1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x7fffffffd438 i =3D #45 0x000000000059ecd2 in Fbyte_code (bytestr=3D, vect= or=3D, maxdepth=3D) at bytecode.c= :679 count =3D 4 op =3D stack =3D { pc =3D 0xa8b2dc "\210\016N\203s\006\201", ,=20 top =3D 0x7fffffffd438,=20 bottom =3D 0x7fffffffd430,=20 byte_string =3D 9005745,=20 byte_string_start =3D 0xa8ac75 "\306 \020\307\021\n\023\307\024\3= 10\311!\211\035\307=3D\204\064",=20 constants =3D 9005781,=20 next =3D 0x7fffffffd650 } top =3D 0x7fffffffd430 result =3D #46 0x00000000005672ef in funcall_lambda (fun=3D9005701, nargs=3D, arg_vector=3D) at eval.c:3165 val =3D syms_left =3D 11721042 next =3D 12575218 i =3D 0 optional =3D 0 rest =3D 2 #47 0x0000000000564f03 in Ffuncall (nargs=3D, args=3D0= x896a80) at eval.c:3040 fun =3D 140737479340288 original_fun =3D 12575218 funcar =3D 8997664 numargs =3D 0 val =3D backtrace =3D { next =3D 0x7fffffffd810,=20 function =3D 0x7fffffffd600,=20 args =3D 0x7fffffffd608,=20 nargs =3D 0,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x7fffffffd608 i =3D #48 0x000000000059ecd2 in Fbyte_code (bytestr=3D, vect= or=3D, maxdepth=3D) at bytecode.c= :679 count =3D 2 op =3D stack =3D { pc =3D 0xa8ba98 "\210*\340\341\342\"\210\343\321\344\"\211\036$;\= 203\251",=20 top =3D 0x7fffffffd600,=20 bottom =3D 0x7fffffffd600,=20 byte_string =3D 9000737,=20 byte_string_start =3D 0xa8ba0a "\b\203\b",=20 constants =3D 9000773,=20 next =3D 0x0 } top =3D 0x7fffffffd600 result =3D #49 0x00000000005672ef in funcall_lambda (fun=3D9000693, nargs=3D, arg_vector=3D) at eval.c:3165 val =3D syms_left =3D 11721042 next =3D 0 i =3D 0 optional =3D 32767 rest =3D 0 #50 0x0000000000567454 in apply_lambda (fun=3D9000693, args=3D11721042, eva= l_flag=3D) at eval.c:3092 args_left =3D 11721042 i =3D tem =3D #51 0x0000000000566b53 in Feval (form=3D9000688) at eval.c:2408 fun =3D 140737479340288 val =3D original_fun =3D 13749474 original_args =3D 11721042 funcar =3D 8997664 backtrace =3D { next =3D 0x0,=20 function =3D 0x7fffffffd838,=20 args =3D 0x7fffffffd740,=20 nargs =3D 0,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } #52 0x000000000056437d in internal_condition_case (bfun=3D, handlers=3D, hfun=3D) at ev= al.c:1458 val =3D 8997664 c =3D { tag =3D 11721042,=20 val =3D 11721042,=20 next =3D 0x7fffffffda10,=20 gcpro =3D 0x0,=20 jmp =3D {{ __jmpbuf =3D {13365184, 3949921905019383304, 13365216, 140737= 488346744, 1, 1, -3949921426383376888, 3949920965887585800},=20 __mask_was_saved =3D 0,=20 __saved_mask =3D { __val =3D {140737353880784, 140737353835656, 4294967295, 42= 38812, 1, 8460504, 0, 1, 1, 0, 140737351959490, 140733193388033, 0, 1407374= 88345816, 140737251616176, 226670640} } }},=20 backlist =3D 0x0,=20 handlerlist =3D 0x0,=20 lisp_eval_depth =3D 0,=20 pdlcount =3D 2,=20 poll_suppress_count =3D 1,=20 interrupt_input_blocked =3D 0,=20 byte_stack =3D 0x0 } h =3D { handler =3D 11773138,=20 var =3D 11721042,=20 chosen_clause =3D 11721042,=20 tag =3D 0x7fffffffd8a0,=20 next =3D 0x0 } #53 0x00000000004f9e06 in top_level_1 (ignore=3D) at k= eyboard.c:1355 No locals. #54 0x00000000005644a8 in internal_catch (tag=3D, func= =3D, arg=3D) at eval.c:1202 c =3D { tag =3D 11769202,=20 val =3D 11721042,=20 next =3D 0x0,=20 gcpro =3D 0x0,=20 jmp =3D {{ __jmpbuf =3D {13365184, 3949921905019383304, 13365216, 140737= 488346744, 1, 1, -3949921426333045240, 3949920965646937608},=20 __mask_was_saved =3D 0,=20 __saved_mask =3D { __val =3D {0, 0, 0, 0, 112, 140737255104152, 352, 140737255= 104152, 140737255104168, 30064771072, 344, 94489280656, 30064771072, 384, 9= 4489280612, 11993394} } }},=20 backlist =3D 0x0,=20 handlerlist =3D 0x0,=20 lisp_eval_depth =3D 0,=20 pdlcount =3D 2,=20 poll_suppress_count =3D 1,=20 interrupt_input_blocked =3D 0,=20 byte_stack =3D 0x0 } #55 0x00000000004f9e7b in command_loop () at keyboard.c:1310 No locals. #56 0x00000000004fa278 in recursive_edit_1 () at keyboard.c:940 val =3D #57 0x00000000004fa3b7 in Frecursive_edit () at keyboard.c:1002 buffer =3D 11721042 #58 0x00000000004ed995 in main (argc=3D0, argv=3D0x7fffffffdf98) at emacs.c= :1764 dummy =3D 0 stack_bottom_variable =3D 0 '\000' do_initial_setlocale =3D skip_args =3D 1 rlim =3D { rlim_cur =3D 8720000,=20 rlim_max =3D 18446744073709551615 } no_loadup =3D 0 junk =3D 0x0 dname_arg =3D 0x0 ch_to_dir =3D 0x0 Lisp Backtrace: "apply" (0xffffbcf8) "json-read-string" (0xffffbe30) "progn" (0xffffc000) "unwind-protect" (0xffffc0f0) "save-current-buffer" (0xffffc1f0) "with-current-buffer" (0xffffc2c0) "let" (0xffffc410) "with-temp-buffer" (0xffffc4e0) "let" (0xffffc630) "progn" (0xffffc710) "unwind-protect" (0xffffc800) "save-current-buffer" (0xffffc900) "with-current-buffer" (0xffffc9d0) "let" (0xffffcb20) "with-temp-buffer" (0xffffcbf0) "eval-buffer" (0xffffcdd8) "load-with-code-conversion" (0xffffcf98) "load" (0xffffd258) "command-line-1" (0xffffd438) "command-line" (0xffffd608) "normal-top-level" (0xffffd740) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Fri Aug 13 12:36:19 2010 Received: (at 6214) by debbugs.gnu.org; 13 Aug 2010 16:36:19 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OjxEw-0002KF-WD for submit@debbugs.gnu.org; Fri, 13 Aug 2010 12:36:19 -0400 Received: from pantheon-po14.its.yale.edu ([130.132.50.23]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OjxEv-0002KA-Ik for 6214@debbugs.gnu.org; Fri, 13 Aug 2010 12:36:18 -0400 Received: from furry (dhcp128036014221.central.yale.edu [128.36.14.221]) (authenticated bits=0) by pantheon-po14.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o7DGb7pi002606 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 13 Aug 2010 12:37:07 -0400 Received: by furry (Postfix, from userid 1000) id 43D8016D402; Fri, 13 Aug 2010 12:37:07 -0400 (EDT) From: Chong Yidong To: Michal Sojka Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> Date: Fri, 13 Aug 2010 12:37:07 -0400 In-Reply-To: <87tymzv6ga.fsf@steelpick.2x.cz> (Michal Sojka's message of "Thu, 12 Aug 2010 23:58:45 +0200") Message-ID: <878w4afozw.fsf@stupidchicken.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -3.2 (---) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -3.2 (---) Michal Sojka writes: > It seems the bug is still in the current Emacs HEAD > (http://repo.or.cz/w/emacs.git/commit/08d1bfbda3ef4a7038556f6c56bec1a37b4721f0). > I can reproduce it with the lisp code sent by Carl, but the backtrace is > different. My backtrace is attached. I can't reproduce it with the BZR repository. Maybe the git mirror you are using is not up to date. Without any further information from you about your Emacs build (information that would have been available if you had used `M-x report-emacs-bug'), it is impossible to say. From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 14 03:38:17 2010 Received: (at 6214) by debbugs.gnu.org; 14 Aug 2010 07:38:17 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OkBJo-0001fi-RN for submit@debbugs.gnu.org; Sat, 14 Aug 2010 03:38:17 -0400 Received: from max.feld.cvut.cz ([147.32.192.36]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OkBJm-0001fd-4p for 6214@debbugs.gnu.org; Sat, 14 Aug 2010 03:38:15 -0400 Received: from localhost (unknown [192.168.200.4]) by max.feld.cvut.cz (Postfix) with ESMTP id 3FF0519F335E; Sat, 14 Aug 2010 09:39:07 +0200 (CEST) X-Virus-Scanned: IMAP AMAVIS Received: from max.feld.cvut.cz ([192.168.200.1]) by localhost (styx.feld.cvut.cz [192.168.200.4]) (amavisd-new, port 10044) with ESMTP id V4ZKxVyNe1la; Sat, 14 Aug 2010 09:39:05 +0200 (CEST) Received: from imap.feld.cvut.cz (imap.feld.cvut.cz [147.32.192.34]) by max.feld.cvut.cz (Postfix) with ESMTP id E350C19F334B; Sat, 14 Aug 2010 09:39:05 +0200 (CEST) Received: from steelpick.2x.cz (unknown [213.29.198.144]) (Authenticated sender: sojkam1) by imap.feld.cvut.cz (Postfix) with ESMTPSA id D0157FA006; Sat, 14 Aug 2010 09:39:04 +0200 (CEST) Received: from wsh by steelpick.2x.cz with local (Exim 4.72) (envelope-from ) id 1OkBKa-00048n-1W; Sat, 14 Aug 2010 09:39:04 +0200 From: Michal Sojka To: Chong Yidong Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string In-Reply-To: <878w4afozw.fsf@stupidchicken.com> References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> User-Agent: Notmuch/0.3.1-80-g86b7c46 (http://notmuchmail.org) Emacs/23.2.1 (x86_64-pc-linux-gnu) Date: Sat, 14 Aug 2010 09:39:03 +0200 Message-ID: <87sk2hbq3s.fsf@steelpick.2x.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.8 (-) On Fri, 13 Aug 2010, Chong Yidong wrote: > Michal Sojka writes: > > > It seems the bug is still in the current Emacs HEAD > > (http://repo.or.cz/w/emacs.git/commit/08d1bfbda3ef4a7038556f6c56bec1a37b4721f0). > > I can reproduce it with the lisp code sent by Carl, but the backtrace is > > different. My backtrace is attached. > > I can't reproduce it with the BZR repository. Maybe the git mirror you > are using is not up to date. Without any further information from you > about your Emacs build (information that would have been available if > you had used `M-x report-emacs-bug'), it is impossible to say. I cloned bzr repo (trunk:101071) and I can reproduce the bug (./emacs --batch -l ~/q/json-emacs-bug.el). Backtrace is the same as in my previous mail and report-emacs-bug information is bellow. Let me know if you need additional info. Thanks -Michal In GNU Emacs 24.0.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.20.1) of 2010-08-14 on steelpick Windowing system distributor `The X.Org Foundation', version 11.0.10707000 Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: en_US.UTF-8 value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: en_US.utf8 value of $XMODIFIERS: nil locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Fundamental Minor modes in effect: tooltip-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Recent input: M-x r e p o r t SPC e m a SPC SPC Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Load-path shadows: None found. Features: (shadow sort gnus-util mail-extr message sendmail regexp-opt rfc822 mml easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader emacsbug package warnings tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mldrag mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev loaddefs button minibuffer faces cus-face files text-properties overlay md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 14 17:29:41 2010 Received: (at 6214) by debbugs.gnu.org; 14 Aug 2010 21:29:41 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OkOIO-0007yj-Pt for submit@debbugs.gnu.org; Sat, 14 Aug 2010 17:29:41 -0400 Received: from pantheon-po23.its.yale.edu ([130.132.50.117]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OkOIN-0007yc-N0 for 6214@debbugs.gnu.org; Sat, 14 Aug 2010 17:29:40 -0400 Received: from furry (173-14-147-246-NewEngland.hfc.comcastbusiness.net [173.14.147.246]) (authenticated bits=0) by pantheon-po23.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o7ELUX59012308 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Sat, 14 Aug 2010 17:30:33 -0400 Received: by furry (Postfix, from userid 1000) id CCDF916D402; Sat, 14 Aug 2010 17:30:32 -0400 (EDT) From: Chong Yidong To: Michal Sojka Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> Date: Sat, 14 Aug 2010 17:30:32 -0400 In-Reply-To: <87sk2hbq3s.fsf@steelpick.2x.cz> (Michal Sojka's message of "Sat, 14 Aug 2010 09:39:03 +0200") Message-ID: <8739ug3mrr.fsf@stupidchicken.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -2.8 (--) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.8 (--) Michal Sojka writes: > I cloned bzr repo (trunk:101071) and I can reproduce the bug (./emacs > --batch -l ~/q/json-emacs-bug.el). Backtrace is the same as in my > previous mail and report-emacs-bug information is bellow. Let me know if > you need additional info. First, please check if this equivalent and simpler recipe also reproduces the problem, to make sure this is the same bug: emacs --batch -q --eval "(apply 'string (make-list 1122176 ?a)))" If so, please recompile without optimizations: CFLAGS="-g" ./configure make and see if you can obtain a cleaner backtrace. From debbugs-submit-bounces@debbugs.gnu.org Mon Aug 16 03:11:10 2010 Received: (at 6214) by debbugs.gnu.org; 16 Aug 2010 07:11:10 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Oktqf-0002Wz-BG for submit@debbugs.gnu.org; Mon, 16 Aug 2010 03:11:10 -0400 Received: from max.feld.cvut.cz ([147.32.192.36]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Oktqc-0002Wc-Nd for 6214@debbugs.gnu.org; Mon, 16 Aug 2010 03:11:08 -0400 Received: from localhost (unknown [192.168.200.4]) by max.feld.cvut.cz (Postfix) with ESMTP id A5AB719F3367; Mon, 16 Aug 2010 09:12:04 +0200 (CEST) X-Virus-Scanned: IMAP AMAVIS Received: from max.feld.cvut.cz ([192.168.200.1]) by localhost (styx.feld.cvut.cz [192.168.200.4]) (amavisd-new, port 10044) with ESMTP id KEBvRIM8b4DE; Mon, 16 Aug 2010 09:12:03 +0200 (CEST) Received: from imap.feld.cvut.cz (imap.feld.cvut.cz [147.32.192.34]) by max.feld.cvut.cz (Postfix) with ESMTP id 04C2219F3376; Mon, 16 Aug 2010 09:12:03 +0200 (CEST) Received: from steelpick.2x.cz (note-sojka.felk.cvut.cz [147.32.86.30]) (Authenticated sender: sojkam1) by imap.feld.cvut.cz (Postfix) with ESMTPSA id B2A1AFA003; Mon, 16 Aug 2010 09:12:02 +0200 (CEST) Received: from wsh by steelpick.2x.cz with local (Exim 4.72) (envelope-from ) id 1OkXma-000232-PK; Sun, 15 Aug 2010 09:37:28 +0200 From: Michal Sojka To: Chong Yidong Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string In-Reply-To: <8739ug3mrr.fsf@stupidchicken.com> References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> <8739ug3mrr.fsf@stupidchicken.com> User-Agent: Notmuch/0.3.1-80-g86b7c46 (http://notmuchmail.org) Emacs/23.2.1 (x86_64-pc-linux-gnu) Date: Sun, 15 Aug 2010 09:37:28 +0200 Message-ID: <87r5i02uo7.fsf@steelpick.2x.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: 1.0 (+) On Sat, 14 Aug 2010, Chong Yidong wrote: > First, please check if this equivalent and simpler recipe also > reproduces the problem, to make sure this is the same bug: >=20 > emacs --batch -q --eval "(apply 'string (make-list 1122176 ?a)))" Yes, the problem is still here. > If so, please recompile without optimizations: >=20 > CFLAGS=3D"-g" ./configure > make >=20 > and see if you can obtain a cleaner backtrace. Program received signal SIGSEGV, Segmentation fault. 0x00000000005f81fc in Fapply (nargs=3D2, args=3D0x7fffffffc670) at eval.c:2= 492 2492 memcpy (funcall_args, args, nargs * sizeof (Lisp_Object)); #0 0x00000000005f81fc in Fapply (nargs=3D2, args=3D0x7fffffffc670) at eval= .c:2492 i =3D 0 numargs =3D 1122176 spread_arg =3D 38164022 funcall_args =3D 0x7fffff76c9d0 fun =3D 9260085 gcpro1 =3D { next =3D 0x2465636,=20 var =3D 0x95cb41,=20 nvars =3D 1122177 } #1 0x00000000005f7ade in Feval (form=3D19244870) at eval.c:2321 vals =3D 0x7fffffffc670 argnum =3D 2 numargs =3D 8 args_left =3D 12507474 i =3D 2 maxargs =3D -14728 argvals =3D {19244854, 18642001, 0, 6, 6, 25769803776, 16350976, 12= 420200} fun =3D 12011021 val =3D 24 original_fun =3D 12677650 original_args =3D 19244918 funcar =3D 19244870 backtrace =3D { next =3D 0x7fffffffc800,=20 function =3D 0x7fffffffc770,=20 args =3D 0x7fffffffc670,=20 nargs =3D 2,=20 evalargs =3D 1 '\001',=20 debug_on_exit =3D 0 '\000' } gcpro1 =3D { next =3D 0x0,=20 var =3D 0x11c7471,=20 nvars =3D 39 } gcpro2 =3D { next =3D 0x0,=20 var =3D 0x7fffffffd530,=20 nvars =3D -14512 } gcpro3 =3D { next =3D 0x125a416,=20 var =3D 0x7fffffffc670,=20 nvars =3D 2 } #2 0x00000000005f8ead in Ffuncall (nargs=3D2, args=3D0x7fffffffc880) at ev= al.c:2983 fun =3D 12010973 original_fun =3D 12677602 funcar =3D 9817142 numargs =3D 1 lisp_numargs =3D 6302634 val =3D 19244870 backtrace =3D { next =3D 0x7fffffffcc80,=20 function =3D 0x7fffffffc880,=20 args =3D 0x7fffffffc888,=20 nargs =3D 1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x7fffffffc888 i =3D 0 #3 0x0000000000645887 in Fbyte_code (bytestr=3D9815377, vector=3D9815413, = maxdepth=3D40) at bytecode.c:679 count =3D 5 op =3D 1 vectorp =3D 0x95c580 bytestr_length =3D 1187 stack =3D { pc =3D 0xb48b63 "\210\202\300\003\016L=E5=9D=83\311\001\346\347\0= 16N\206\241\001\f\211A\024@!!\026F\016E\203\274\001\016E\016F\016EAB\241\21= 0\016EA\026E\202\300\003\016F\016RB\211\026R\026E\202\300\003\016L=E8=9D=83= \372\001\347\016N\206\333\001\f\211A\024@!\036S\346\016S!\036T\351\016T!\20= 3\357\001\016T\026S\352\016S\314\331#\210*\202\300\003\016L=EB=9D=83!\002\3= 47\016N\206\f\002\f\211A\024@!\036S\346\016S!\036T\352\016T\314=D9=89$\210*= \202\300\003\016L=EC=9A=83J\002\331\026Q\016N\206\065\002\f\211A\024@\211\0= 26F;\204@\002\332\355!\210\356\347\016F!!\210\202\300\003\016L=EF=9A=83X\00= 2", ...,=20 top =3D 0x7fffffffc888,=20 bottom =3D 0x7fffffffc880,=20 byte_string =3D 9815377,=20 byte_string_start =3D 0xb489d9 "\306 \210\b\203\021",=20 constants =3D 9815413,=20 next =3D 0x7fffffffcd70 } top =3D 0x7fffffffc880 result =3D 140737488341184 #4 0x00000000005f9701 in funcall_lambda (fun=3D9815317, nargs=3D1, arg_vec= tor=3D0x7fffffffcd08) at eval.c:3165 val =3D 12535520 syms_left =3D 12507474 next =3D 14517122 count =3D 4 i =3D 1 optional =3D 0 rest =3D 0 #5 0x00000000005f90bb in Ffuncall (nargs=3D2, args=3D0x7fffffffcd00) at ev= al.c:3029 fun =3D 9815317 original_fun =3D 14191698 funcar =3D 12535520 numargs =3D 1 lisp_numargs =3D 6152191 val =3D 19245862 backtrace =3D { next =3D 0x7fffffffd0f0,=20 function =3D 0x7fffffffcd00,=20 args =3D 0x7fffffffcd08,=20 nargs =3D 1,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0x125ab36 i =3D 0 #6 0x0000000000645887 in Fbyte_code (bytestr=3D9788449, vector=3D9788485, = maxdepth=3D28) at bytecode.c:679 count =3D 4 op =3D 1 vectorp =3D 0x955c50 bytestr_length =3D 1723 stack =3D { pc =3D 0xb4b681 "\210\016N\203^\006\201", ,=20 top =3D 0x7fffffffcd08,=20 bottom =3D 0x7fffffffcd00,=20 byte_string =3D 9788449,=20 byte_string_start =3D 0xb4b02f "\306 \020\307\021\n\023\307\024\3= 10\311!\211\035\307=3D\204\064",=20 constants =3D 9788485,=20 next =3D 0x7fffffffd1d0 } top =3D 0x7fffffffcd00 result =3D 13467377 #7 0x00000000005f9701 in funcall_lambda (fun=3D9788405, nargs=3D0, arg_vec= tor=3D0x7fffffffd178) at eval.c:3165 val =3D 12535520 syms_left =3D 12507474 next =3D 13258642 count =3D 4 i =3D 0 optional =3D 0 rest =3D 0 #8 0x00000000005f90bb in Ffuncall (nargs=3D1, args=3D0x7fffffffd170) at ev= al.c:3029 fun =3D 9788405 original_fun =3D 13569954 funcar =3D 13569906 numargs =3D 0 lisp_numargs =3D 6152191 val =3D 13467377 backtrace =3D { next =3D 0x7fffffffd6c0,=20 function =3D 0x7fffffffd170,=20 args =3D 0x7fffffffd178,=20 nargs =3D 0,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } internal_args =3D 0xcd7ef1 i =3D 0 #9 0x0000000000645887 in Fbyte_code (bytestr=3D9783473, vector=3D9783509, = maxdepth=3D24) at bytecode.c:679 count =3D 2 op =3D 0 vectorp =3D 0x9548e0 bytestr_length =3D 220 stack =3D { pc =3D 0xb4be2e "\210*\340\341\342\"\210\343\321\344\"\211\036$;\= 203\251",=20 top =3D 0x7fffffffd170,=20 bottom =3D 0x7fffffffd170,=20 byte_string =3D 9783473,=20 byte_string_start =3D 0xb4bda0 "\b\203\b",=20 constants =3D 9783509,=20 next =3D 0x0 } top =3D 0x7fffffffd170 result =3D 4294967295 #10 0x00000000005f9701 in funcall_lambda (fun=3D9783429, nargs=3D0, arg_vec= tor=3D0x7fffffffd530) at eval.c:3165 val =3D 1 syms_left =3D 12507474 next =3D 140733193388033 count =3D 2 i =3D 0 optional =3D 0 rest =3D 0 #11 0x00000000005f932f in apply_lambda (fun=3D9783429, args=3D12507474, eva= l_flag=3D1) at eval.c:3092 args_left =3D 12507474 numargs =3D 0 arg_vector =3D 0x7fffffffd530 gcpro1 =3D { next =3D 0x7ffff1e40970,=20 var =3D 0x7ffff7fc14d0,=20 nvars =3D 0 } gcpro2 =3D { next =3D 0x83b,=20 var =3D 0x1000,=20 nvars =3D 8 } gcpro3 =3D { next =3D 0x1,=20 var =3D 0x81a4,=20 nvars =3D 0 } i =3D 0 tem =3D 5 #12 0x00000000005f7dea in Feval (form=3D12978838) at eval.c:2390 fun =3D 9783429 val =3D 140737488345192 original_fun =3D 14516546 original_args =3D 12507474 funcar =3D 140737354130560 backtrace =3D { next =3D 0x0,=20 function =3D 0x7fffffffd6f0,=20 args =3D 0x7fffffffd530,=20 nargs =3D 0,=20 evalargs =3D 0 '\000',=20 debug_on_exit =3D 0 '\000' } gcpro1 =3D { next =3D 0x7ffff7fb6488,=20 var =3D 0x7ffff7fc14d0,=20 nvars =3D -134225624 } gcpro2 =3D { next =3D 0x7fffffffd810,=20 var =3D 0x7ffff1e34c28,=20 nvars =3D -236739152 } gcpro3 =3D { next =3D 0x0,=20 var =3D 0x7fff00000017,=20 nvars =3D 44108294 } #13 0x00000000005599d1 in top_level_2 () at keyboard.c:1347 No locals. #14 0x00000000005f5f8c in internal_condition_case (bfun=3D0x5599be , handlers=3D12559570, hfun=3D0x5595a8 ) at eval.c:1458 val =3D 5609939 c =3D { tag =3D 12507474,=20 val =3D 12507474,=20 next =3D 0x7fffffffd930,=20 gcpro =3D 0x0,=20 jmp =3D {{ __jmpbuf =3D {5, 7988929332933021680, 4279008, 14073748834696= 0, 0, 0, 7988929332880592880, -7988928721167724560},=20 __mask_was_saved =3D 0,=20 __saved_mask =3D { __val =3D {4294967295, 140737488345248, 1, 9246952, 0, 0, 0= , 0, 140737351959490, 1, 0, 0, 140737251616176, 12936662, 5, 14073748834566= 4} } }},=20 backlist =3D 0x0,=20 handlerlist =3D 0x0,=20 lisp_eval_depth =3D 0,=20 pdlcount =3D 2,=20 poll_suppress_count =3D 1,=20 interrupt_input_blocked =3D 0,=20 byte_stack =3D 0x0 } h =3D { handler =3D 12559570,=20 var =3D 12507474,=20 chosen_clause =3D 140737488345104,=20 tag =3D 0x7fffffffd7c0,=20 next =3D 0x0 } #15 0x0000000000559a0b in top_level_1 (ignore=3D12507474) at keyboard.c:1355 No locals. #16 0x00000000005f592e in internal_catch (tag=3D12555634, func=3D0x5599d3 <= top_level_1>, arg=3D12507474) at eval.c:1202 c =3D { tag =3D 12555634,=20 val =3D 12507474,=20 next =3D 0x0,=20 gcpro =3D 0x0,=20 jmp =3D {{ __jmpbuf =3D {5, 7988929332987547632, 4279008, 14073748834696= 0, 0, 0, 7988929332960284656, -7988928721370886160},=20 __mask_was_saved =3D 0,=20 __saved_mask =3D { __val =3D {6153582, 140737255104152, 4301629832, 0, 1250747= 4, 12779824, 140737488345720, 60129542288, 12535520, 12033184, 6152158, 140= 737488345680, 12507474, 4279008, 140737488346960, 140737488345696} } }},=20 backlist =3D 0x0,=20 handlerlist =3D 0x0,=20 lisp_eval_depth =3D 0,=20 pdlcount =3D 2,=20 poll_suppress_count =3D 1,=20 interrupt_input_blocked =3D 0,=20 byte_stack =3D 0x0 } #17 0x0000000000559939 in command_loop () at keyboard.c:1310 No locals. #18 0x00000000005590df in recursive_edit_1 () at keyboard.c:940 count =3D 1 val =3D 5608104 #19 0x0000000000559292 in Frecursive_edit () at keyboard.c:1002 count =3D 0 buffer =3D 12507474 #20 0x00000000005575cc in main (argc=3D5, argv=3D0x7fffffffdf58) at emacs.c= :1764 dummy =3D 140737251592752 stack_bottom_variable =3D 0 '\000' do_initial_setlocale =3D 1 skip_args =3D 1 rlim =3D { rlim_cur =3D 8720000,=20 rlim_max =3D 18446744073709551615 } no_loadup =3D 0 junk =3D 0x0 dname_arg =3D 0x0 ch_to_dir =3D 0x45
Lisp Backtrace: "apply" (0xffffc670) "eval" (0xffffc888) "command-line-1" (0xffffcd08) "command-line" (0xffffd178) "normal-top-level" (0xffffd530) From debbugs-submit-bounces@debbugs.gnu.org Mon Aug 16 13:39:54 2010 Received: (at 6214) by debbugs.gnu.org; 16 Aug 2010 17:39:54 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ol3f7-0004pz-KA for submit@debbugs.gnu.org; Mon, 16 Aug 2010 13:39:53 -0400 Received: from pantheon-po45.its.yale.edu ([130.132.50.79]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ol3f5-0004pt-MU for 6214@debbugs.gnu.org; Mon, 16 Aug 2010 13:39:52 -0400 Received: from furry ([64.134.241.146]) (authenticated bits=0) by pantheon-po45.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o7GHekVB003001 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Mon, 16 Aug 2010 13:40:49 -0400 Received: by furry (Postfix, from userid 1000) id 71ED6C013; Mon, 16 Aug 2010 13:40:13 -0400 (EDT) From: Chong Yidong To: Michal Sojka Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> <8739ug3mrr.fsf@stupidchicken.com> <87r5i02uo7.fsf@steelpick.2x.cz> Date: Mon, 16 Aug 2010 13:40:13 -0400 In-Reply-To: <87r5i02uo7.fsf@steelpick.2x.cz> (Michal Sojka's message of "Sun, 15 Aug 2010 09:37:28 +0200") Message-ID: <874oeuv4le.fsf@stupidchicken.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Thanks, that is a useful backtrace. Could you apply this patch and see if it fixes the problem? === modified file 'src/eval.c' *** src/eval.c 2010-08-06 19:07:16 +0000 --- src/eval.c 2010-08-16 17:37:22 +0000 *************** *** 2430,2437 **** register int i, numargs; register Lisp_Object spread_arg; register Lisp_Object *funcall_args; ! Lisp_Object fun; struct gcpro gcpro1; fun = args [0]; funcall_args = 0; --- 2430,2438 ---- register int i, numargs; register Lisp_Object spread_arg; register Lisp_Object *funcall_args; ! Lisp_Object fun, retval; struct gcpro gcpro1; + USE_SAFE_ALLOCA; fun = args [0]; funcall_args = 0; *************** *** 2470,2477 **** { /* Avoid making funcall cons up a yet another new vector of arguments by explicitly supplying nil's for optional values */ ! funcall_args = (Lisp_Object *) alloca ((1 + XSUBR (fun)->max_args) ! * sizeof (Lisp_Object)); for (i = numargs; i < XSUBR (fun)->max_args;) funcall_args[++i] = Qnil; GCPRO1 (*funcall_args); --- 2471,2478 ---- { /* Avoid making funcall cons up a yet another new vector of arguments by explicitly supplying nil's for optional values */ ! SAFE_ALLOCA (funcall_args, Lisp_Object *, ((1 + XSUBR (fun)->max_args) ! * sizeof (Lisp_Object))); for (i = numargs; i < XSUBR (fun)->max_args;) funcall_args[++i] = Qnil; GCPRO1 (*funcall_args); *************** *** 2483,2490 **** function itself as well as its arguments. */ if (!funcall_args) { ! funcall_args = (Lisp_Object *) alloca ((1 + numargs) ! * sizeof (Lisp_Object)); GCPRO1 (*funcall_args); gcpro1.nvars = 1 + numargs; } --- 2484,2491 ---- function itself as well as its arguments. */ if (!funcall_args) { ! SAFE_ALLOCA (funcall_args, Lisp_Object *, ((1 + numargs) ! * sizeof (Lisp_Object))); GCPRO1 (*funcall_args); gcpro1.nvars = 1 + numargs; } *************** *** 2500,2506 **** } /* By convention, the caller needs to gcpro Ffuncall's args. */ ! RETURN_UNGCPRO (Ffuncall (gcpro1.nvars, funcall_args)); } /* Run hook variables in various ways. */ --- 2501,2511 ---- } /* By convention, the caller needs to gcpro Ffuncall's args. */ ! retval = Ffuncall (gcpro1.nvars, funcall_args); ! UNGCPRO; ! SAFE_FREE (); ! ! return retval; } /* Run hook variables in various ways. */ From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 17 05:32:37 2010 Received: (at 6214) by debbugs.gnu.org; 17 Aug 2010 09:32:37 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlIX7-0002ku-2T for submit@debbugs.gnu.org; Tue, 17 Aug 2010 05:32:37 -0400 Received: from max.feld.cvut.cz ([147.32.192.36]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlIX4-0002kp-HP for 6214@debbugs.gnu.org; Tue, 17 Aug 2010 05:32:35 -0400 Received: from localhost (unknown [192.168.200.4]) by max.feld.cvut.cz (Postfix) with ESMTP id 4471F19F32F3; Tue, 17 Aug 2010 11:33:35 +0200 (CEST) X-Virus-Scanned: IMAP AMAVIS Received: from max.feld.cvut.cz ([192.168.200.1]) by localhost (styx.feld.cvut.cz [192.168.200.4]) (amavisd-new, port 10044) with ESMTP id J6mr3t0GXQc2; Tue, 17 Aug 2010 11:33:33 +0200 (CEST) Received: from imap.feld.cvut.cz (imap.feld.cvut.cz [147.32.192.34]) by max.feld.cvut.cz (Postfix) with ESMTP id A900019F30DD; Tue, 17 Aug 2010 11:33:33 +0200 (CEST) Received: from steelpick.2x.cz (note-sojka.felk.cvut.cz [147.32.86.30]) (Authenticated sender: sojkam1) by imap.feld.cvut.cz (Postfix) with ESMTPSA id 14F7815C027; Tue, 17 Aug 2010 11:33:32 +0200 (CEST) Received: from wsh by steelpick.2x.cz with local (Exim 4.72) (envelope-from ) id 1Ol6Ss-0005Vy-GN; Mon, 16 Aug 2010 22:39:26 +0200 From: Michal Sojka To: Chong Yidong Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string In-Reply-To: <874oeuv4le.fsf@stupidchicken.com> References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> <8739ug3mrr.fsf@stupidchicken.com> <87r5i02uo7.fsf@steelpick.2x.cz> <874oeuv4le.fsf@stupidchicken.com> User-Agent: Notmuch/0.3.1-80-g86b7c46 (http://notmuchmail.org) Emacs/23.2.1 (x86_64-pc-linux-gnu) Date: Mon, 16 Aug 2010 22:39:26 +0200 Message-ID: <87fwye2sxt.fsf@steelpick.2x.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -0.3 (/) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.7 (/) On Mon, 16 Aug 2010, Chong Yidong wrote: > Thanks, that is a useful backtrace. Could you apply this patch and see > if it fixes the problem? Great! The patch fixes the problem. Now I can view 20 MB email in notmuch. Thanks, Michal From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 17 11:09:42 2010 Received: (at 6214) by debbugs.gnu.org; 17 Aug 2010 15:09:42 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlNnK-00069K-6q for submit@debbugs.gnu.org; Tue, 17 Aug 2010 11:09:42 -0400 Received: from pantheon-po44.its.yale.edu ([130.132.50.78]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlNnI-00069F-4v for 6214@debbugs.gnu.org; Tue, 17 Aug 2010 11:09:40 -0400 Received: from furry ([64.134.241.179]) (authenticated bits=0) by pantheon-po44.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o7HFAcWL014923 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 17 Aug 2010 11:10:40 -0400 Received: by furry (Postfix, from userid 1000) id C9A36C013; Tue, 17 Aug 2010 11:10:37 -0400 (EDT) From: Chong Yidong To: Stefan Monnier Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> <8739ug3mrr.fsf@stupidchicken.com> <87r5i02uo7.fsf@steelpick.2x.cz> <874oeuv4le.fsf@stupidchicken.com> <87fwye2sxt.fsf@steelpick.2x.cz> Date: Tue, 17 Aug 2010 11:10:37 -0400 In-Reply-To: <87fwye2sxt.fsf@steelpick.2x.cz> (Michal Sojka's message of "Mon, 16 Aug 2010 22:39:26 +0200") Message-ID: <87pqxhmg0i.fsf@stupidchicken.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth , Michal Sojka X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Michal Sojka writes: > On Mon, 16 Aug 2010, Chong Yidong wrote: >> Thanks, that is a useful backtrace. Could you apply this patch and see >> if it fixes the problem? > > Great! The patch fixes the problem. Now I can view 20 MB email in > notmuch. Hmm, there is a problem, though. If we attempt to avoid a stack overflow in `apply' by using the heap rather than the stack to store large numbers of arguments, those arguments are invisible to the stack-marking gargbage collector. One workaround is to temporarily disable garbage collection if using the heap. Stefan, any ideas? From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 17 12:26:28 2010 Received: (at 6214) by debbugs.gnu.org; 17 Aug 2010 16:26:28 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlOzc-0006gO-H4 for submit@debbugs.gnu.org; Tue, 17 Aug 2010 12:26:28 -0400 Received: from pantheon-po41.its.yale.edu ([130.132.50.98]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlOzZ-0006gJ-S4 for 6214@debbugs.gnu.org; Tue, 17 Aug 2010 12:26:26 -0400 Received: from furry ([64.134.241.179]) (authenticated bits=0) by pantheon-po41.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o7HGRQuG006042 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 17 Aug 2010 12:27:27 -0400 Received: by furry (Postfix, from userid 1000) id 05A81C013; Tue, 17 Aug 2010 12:27:26 -0400 (EDT) From: Chong Yidong To: Stefan Monnier Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> <8739ug3mrr.fsf@stupidchicken.com> <87r5i02uo7.fsf@steelpick.2x.cz> <874oeuv4le.fsf@stupidchicken.com> <87fwye2sxt.fsf@steelpick.2x.cz> <87pqxhmg0i.fsf@stupidchicken.com> Date: Tue, 17 Aug 2010 12:27:25 -0400 In-Reply-To: <87pqxhmg0i.fsf@stupidchicken.com> (Chong Yidong's message of "Tue, 17 Aug 2010 11:10:37 -0400") Message-ID: <87sk2dxl01.fsf@stupidchicken.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth , Michal Sojka X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Chong Yidong writes: > Hmm, there is a problem, though. If we attempt to avoid a stack > overflow in `apply' by using the heap rather than the stack to store > large numbers of arguments, those arguments are invisible to the > stack-marking gargbage collector. Never mind, I got confused. SAFE_ALLOCA uses record_unwind_protect, so it's gc safe. From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 17 16:56:46 2010 Received: (at 6214) by debbugs.gnu.org; 17 Aug 2010 20:56:46 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlTDB-0001ZI-CC for submit@debbugs.gnu.org; Tue, 17 Aug 2010 16:56:45 -0400 Received: from mail-out.m-online.net ([212.18.0.9]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlTD9-0001ZD-SV for 6214@debbugs.gnu.org; Tue, 17 Aug 2010 16:56:44 -0400 Received: from frontend1.mail.m-online.net (unknown [192.168.8.180]) by mail-out.m-online.net (Postfix) with ESMTP id 0DAE01C15761; Tue, 17 Aug 2010 22:57:44 +0200 (CEST) Received: from igel.home (ppp-88-217-99-164.dynamic.mnet-online.de [88.217.99.164]) by mail.mnet-online.de (Postfix) with ESMTP id ABD2D1C001B0; Tue, 17 Aug 2010 22:57:44 +0200 (CEST) Received: by igel.home (Postfix, from userid 501) id 59AD7CA297; Tue, 17 Aug 2010 22:57:44 +0200 (CEST) From: Andreas Schwab To: Chong Yidong Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> <8739ug3mrr.fsf@stupidchicken.com> <87r5i02uo7.fsf@steelpick.2x.cz> <874oeuv4le.fsf@stupidchicken.com> <87fwye2sxt.fsf@steelpick.2x.cz> <87pqxhmg0i.fsf@stupidchicken.com> <87sk2dxl01.fsf@stupidchicken.com> X-Yow: .. I'm IMAGINING a sensuous GIRAFFE, CAVORTING in the BACK ROOM of a KOSHER DELI -- Date: Tue, 17 Aug 2010 22:57:44 +0200 In-Reply-To: <87sk2dxl01.fsf@stupidchicken.com> (Chong Yidong's message of "Tue, 17 Aug 2010 12:27:25 -0400") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth , Stefan Monnier , Michal Sojka X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Chong Yidong writes: > Never mind, I got confused. SAFE_ALLOCA uses record_unwind_protect, so > it's gc safe. No, it isn't. SAFE_ALLOCA only protects the memory block, you need to use SAVE_ALLOCA_LISP to protect also its contents. Andreas. -- Andreas Schwab, schwab@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 17 17:46:05 2010 Received: (at 6214) by debbugs.gnu.org; 17 Aug 2010 21:46:05 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlTyv-0001tO-G7 for submit@debbugs.gnu.org; Tue, 17 Aug 2010 17:46:05 -0400 Received: from pantheon-po23.its.yale.edu ([130.132.50.117]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OlTyt-0001t1-Cf for 6214@debbugs.gnu.org; Tue, 17 Aug 2010 17:46:03 -0400 Received: from furry ([64.134.241.179]) (authenticated bits=0) by pantheon-po23.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o7HLl0Yg023901 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 17 Aug 2010 17:47:03 -0400 Received: by furry (Postfix, from userid 1000) id 34273C013; Tue, 17 Aug 2010 17:46:58 -0400 (EDT) From: Chong Yidong To: Andreas Schwab Subject: Re: bug#6214: 23.1; json-read-string crashes emacs with long string References: <87pr0t5h1q.fsf@yoom.home.cworth.org> <87fx1pkrsh.fsf@stupidchicken.com> <87tymzv6ga.fsf@steelpick.2x.cz> <878w4afozw.fsf@stupidchicken.com> <87sk2hbq3s.fsf@steelpick.2x.cz> <8739ug3mrr.fsf@stupidchicken.com> <87r5i02uo7.fsf@steelpick.2x.cz> <874oeuv4le.fsf@stupidchicken.com> <87fwye2sxt.fsf@steelpick.2x.cz> <87pqxhmg0i.fsf@stupidchicken.com> <87sk2dxl01.fsf@stupidchicken.com> Date: Tue, 17 Aug 2010 17:46:57 -0400 In-Reply-To: (Andreas Schwab's message of "Tue, 17 Aug 2010 22:57:44 +0200") Message-ID: <87wrroj4j2.fsf@stupidchicken.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 6214 Cc: 6214@debbugs.gnu.org, Notmuch mailing list , Carl Worth , Stefan Monnier , Michal Sojka X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Andreas Schwab writes: > Chong Yidong writes: > >> Never mind, I got confused. SAFE_ALLOCA uses record_unwind_protect, so >> it's gc safe. > > No, it isn't. SAFE_ALLOCA only protects the memory block, you need to > use SAVE_ALLOCA_LISP to protect also its contents. Ah, OK. Thanks. From unknown Tue Aug 19 02:51:31 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 15 Sep 2010 11:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator