From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lennart Borgman Newsgroups: gmane.emacs.devel Subject: Re: Unwanted undo-boundary Date: Sun, 14 Feb 2010 23:49:30 +0100 Message-ID: References: <83tytkxxkx.fsf@gnu.org> <83sk93y9t2.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1266187825 6642 80.91.229.12 (14 Feb 2010 22:50:25 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 14 Feb 2010 22:50:25 +0000 (UTC) Cc: emacs-devel@gnu.org To: Eli Zaretskii , Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Feb 14 23:50:22 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1NgnID-0005nw-4H for ged-emacs-devel@m.gmane.org; Sun, 14 Feb 2010 23:50:22 +0100 Original-Received: from localhost ([127.0.0.1]:42829 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NgnIC-00043Q-38 for ged-emacs-devel@m.gmane.org; Sun, 14 Feb 2010 17:50:20 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NgnHo-0003uv-A4 for emacs-devel@gnu.org; Sun, 14 Feb 2010 17:49:56 -0500 Original-Received: from [140.186.70.92] (port=57198 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NgnHm-0003uO-Pt for emacs-devel@gnu.org; Sun, 14 Feb 2010 17:49:55 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NgnHl-0000lk-IV for emacs-devel@gnu.org; Sun, 14 Feb 2010 17:49:54 -0500 Original-Received: from mail-fx0-f217.google.com ([209.85.220.217]:42868) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NgnHj-0000lQ-Jz; Sun, 14 Feb 2010 17:49:53 -0500 Original-Received: by fxm9 with SMTP id 9so903847fxm.30 for ; Sun, 14 Feb 2010 14:49:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :from:date:message-id:subject:to:cc:content-type :content-transfer-encoding; bh=74Cp/9eS2D+4Nb5cQWrveUgac7D4URiVoXysdPxwk+E=; b=s2OVb/k3TEyvjjgZ9TGFCi/4p18dJhPyxNCCJEJkONp4XqDbmeWCgA8aM6O2HDg7L/ VTx9P6fgM7ntmen/iU3JqVA0db+dOK0F+Yc1U4MDDpmFcspNyKSTVPLkHOX8V0t4Cd8o VKGA8cjQ0THSn2Z3TErjaeu641tO+UK9PFxyc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:content-transfer-encoding; b=goDDGfwuEUWS4QilYl3ygwSCslwZY32KyEmy+lYA7z88A9gbhhG/X5FuVatXC51y2s Ik/QfyV6R77SppciPeJS5LgoYnA8efpUAGI8+ktvl7nOMegpfLVoOPek7klcb8X7wyLp JaO5EKxYS++8CLsJ8HkIfc6fsYGHjDLlb5Iok= Original-Received: by 10.239.153.71 with SMTP id y7mr426447hbb.210.1266187790087; Sun, 14 Feb 2010 14:49:50 -0800 (PST) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:121124 Archived-At: On Sun, Feb 14, 2010 at 11:32 PM, Lennart Borgman wrote: > > The xbacktrace:s are here, just in case I misunderstand this: > > =C2=A0 =C2=A0Breakpoint 3, Fundo_boundary () at undo.c:303 > =C2=A0 =C2=A0303 =C2=A0 =C2=A0 =C2=A0 if (EQ (current_buffer->undo_list, = Qt)) > =C2=A0 =C2=A0(gdb) xbacktrace > =C2=A0 =C2=A0"nxml-indent-line" (0x82d7b4) > =C2=A0 =C2=A0"funcall" (0x82d7b0) The bt backtrace looks more useful. It looks like the undo boundaries are coming from sequences like this: (gdb) bt #0 Fundo_boundary () at undo.c:303 #1 0x0102e079 in record_marker_adjustment (marker=3D61172811, adjustment=3D-80) at undo.c:211 #2 0x0114df23 in adjust_markers_for_delete (from=3D1, from_byte=3D1, to=3D86, to_byte=3D86) at insdel.c:373 #3 0x0115149c in del_range_2 (from=3D1, from_byte=3D1, to=3D86, to_byte=3D86, ret_string=3D0) at insdel.c:1946 #4 0x01151044 in del_range_1 (from=3D1, to=3D86, prepare=3D1, ret_string=3D0) at insdel.c:1814 #5 0x01150f4e in del_range (from=3D1, to=3D86) at insdel.c:1782 and (gdb) bt #0 Fundo_boundary () at undo.c:303 #1 0x0102dd77 in record_point (pt=3D35) at undo.c:90 #2 0x0102debc in record_insert (beg=3D35, length=3D13) at undo.c:141 #3 0x0114f1ce in insert_from_string_1 (string=3D60834385, pos=3D0, pos_byte=3D0, nchars=3D13, nbytes=3D13, inherit=3D0, before_markers=3D0) at insdel.c:1098 #4 0x0114efa7 in insert_from_string (string=3D60834385, pos=3D0, pos_byte=3D0, length=3D13, length_byte=3D13, inherit=3D0) at insdel.c:1022 #5 0x010aa7ef in general_insert_function (insert_func=3D0x114e834 , insert_from_string_func=3D0x114ef53 , inherit=3D0, nargs=3D1, args=3D0x82d540) at editfns.c:2201 #6 0x010aa85a in Finsert (nargs=3D1, args=3D0x1f) at editfns.c:2245 Below are full bt from the above: (gdb) bt #0 Fundo_boundary () at undo.c:303 #1 0x0102e079 in record_marker_adjustment (marker=3D61359803, adjustment=3D-2) at undo.c:211 #2 0x0114df23 in adjust_markers_for_delete (from=3D68, from_byte=3D68, to=3D70, to_byte=3D70) at insdel.c:373 #3 0x0115149c in del_range_2 (from=3D68, from_byte=3D68, to=3D70, to_byte=3D70, ret_string=3D0) at insdel.c:1946 #4 0x01151044 in del_range_1 (from=3D68, to=3D70, prepare=3D1, ret_string=3D0) at insdel.c:1814 #5 0x01150f4e in del_range (from=3D68, to=3D70) at insdel.c:1782 #6 0x010ad02b in Fdelete_region (start=3D272, end=3D280) at editfns.c:= 3184 #7 0x0116ae68 in Fbyte_code (bytestr=3D19484841, vector=3D19484861, maxdepth=3D16) at bytecode.c:1425 #8 0x01023c01 in funcall_lambda (fun=3D19484805, nargs=3D1, arg_vector=3D0x82e040) at eval.c:3211 #9 0x010238ec in apply_lambda (fun=3D19484805, args=3D58808382, eval_flag=3D1) at eval.c:3135 #10 0x010227be in Feval (form=3D58808374) at eval.c:2388 #11 0x0101f675 in Fprogn (args=3D61050782) at eval.c:415 #12 0x010223c2 in Feval (form=3D61050774) at eval.c:2293 #13 0x0101f5a2 in Fif (args=3D61050758) at eval.c:363 #14 0x010223c2 in Feval (form=3D61050750) at eval.c:2293 #15 0x0102287f in Feval (form=3D58808358) at eval.c:2404 #16 0x0101f675 in Fprogn (args=3D58808398) at eval.c:415 #17 0x01020541 in FletX (args=3D58748758) at eval.c:1012 #18 0x010223c2 in Feval (form=3D58750438) at eval.c:2293 #19 0x0101f675 in Fprogn (args=3D58808470) at eval.c:415 #20 0x01023bb5 in funcall_lambda (fun=3D58808478, nargs=3D3, arg_vector=3D0x82e790) at eval.c:3204 #21 0x010238ec in apply_lambda (fun=3D58808478, args=3D58804846, eval_flag=3D1) at eval.c:3135 #22 0x010228a9 in Feval (form=3D58804838) at eval.c:2406 #23 0x010206b5 in Flet (args=3D58804886) at eval.c:1052 #24 0x010223c2 in Feval (form=3D58804822) at eval.c:2293 #25 0x0101f4f7 in For (args=3D58805062) at eval.c:311 #26 0x010223c2 in Feval (form=3D58804766) at eval.c:2293 #27 0x0101f675 in Fprogn (args=3D58805070) at eval.c:415 #28 0x01020837 in Fwhile (args=3D58804758) at eval.c:1090 #29 0x010223c2 in Feval (form=3D58804606) at eval.c:2293 #30 0x0101f675 in Fprogn (args=3D58805142) at eval.c:415 #31 0x0102077e in Flet (args=3D58804550) at eval.c:1068 #32 0x010223c2 in Feval (form=3D58804238) at eval.c:2293 #33 0x0101f675 in Fprogn (args=3D58805198) at eval.c:415 #34 0x010a7fd4 in Fsave_excursion (args=3D58806230) at editfns.c:1012 #35 0x010223c2 in Feval (form=3D58806182) at eval.c:2293 #36 0x0101f675 in Fprogn (args=3D58803206) at eval.c:415 #37 0x01023bb5 in funcall_lambda (fun=3D58803214, nargs=3D2, arg_vector=3D0x82f204) at eval.c:3204 #38 0x01023777 in Ffuncall (nargs=3D3, args=3D0x82f200) at eval.c:3081 #39 0x011692ab in Fbyte_code (bytestr=3D19486977, vector=3D19486997, maxdepth=3D12) at bytecode.c:679 #40 0x01023c01 in funcall_lambda (fun=3D19486917, nargs=3D2, arg_vector=3D0x82f3a0) at eval.c:3211 #41 0x010238ec in apply_lambda (fun=3D19486917, args=3D61655158, eval_flag=3D1) at eval.c:3135 #42 0x010227be in Feval (form=3D61655166) at eval.c:2388 #43 0x010234c3 in Ffuncall (nargs=3D2, args=3D0x82f5d0) at eval.c:3024 #44 0x011692ab in Fbyte_code (bytestr=3D19335121, vector=3D19335141, maxdepth=3D20) at bytecode.c:679 #45 0x01023c01 in funcall_lambda (fun=3D19335069, nargs=3D2, arg_vector=3D0x82f814) at eval.c:3211 #46 0x010236e0 in Ffuncall (nargs=3D3, args=3D0x82f810) at eval.c:3070 #47 0x01022bb0 in Fapply (nargs=3D2, args=3D0x82f8b0) at eval.c:2503 #48 0x01022fda in apply1 (fn=3D45636330, arg=3D61704094) at eval.c:2773 #49 0x01166f1b in Fcall_interactively (function=3D45636330, record_flag=3D45279234, keys=3D45300485) at callint.c:396 #50 0x01023517 in Ffuncall (nargs=3D4, args=3D0x82fb40) at eval.c:3030 #51 0x010230af in call3 (fn=3D45430218, arg1=3D45636330, arg2=3D45279234, arg3=3D45279234) at eval.c:2850 #52 0x01014f56 in Fcommand_execute (cmd=3D45636330, record_flag=3D45279234, keys=3D45279234, special=3D45279234) at keyboard.c:10507 #53 0x0100789b in command_loop_1 () at keyboard.c:1904 #54 0x01020fe4 in internal_condition_case (bfun=3D0x100621d , handlers=3D45335770, hfun=3D0x1005c0e ) at eval.c:1490 #55 0x01005f82 in command_loop_2 () at keyboard.c:1360 #56 0x01020ad5 in internal_catch (tag=3D45334962, func=3D0x1005f5f , arg=3D45279234) at eval.c:1226 #57 0x01005f38 in command_loop () at keyboard.c:1339 #58 0x0100582a in recursive_edit_1 () at keyboard.c:954 #59 0x0100598e in Frecursive_edit () at keyboard.c:1016 #60 0x010027e6 in main (argc=3D4, argv=3D0xa92980) at emacs.c:1833 Lisp Backtrace: "indent-line-to" (0x82e040) and (gdb) bt #0 Fundo_boundary () at undo.c:303 #1 0x0102dd77 in record_point (pt=3D35) at undo.c:90 #2 0x0102debc in record_insert (beg=3D35, length=3D13) at undo.c:141 #3 0x0114f1ce in insert_from_string_1 (string=3D60834385, pos=3D0, pos_byte=3D0, nchars=3D13, nbytes=3D13, inherit=3D0, before_markers=3D0) at insdel.c:1098 #4 0x0114efa7 in insert_from_string (string=3D60834385, pos=3D0, pos_byte=3D0, length=3D13, length_byte=3D13, inherit=3D0) at insdel.c:1022 #5 0x010aa7ef in general_insert_function (insert_func=3D0x114e834 , insert_from_string_func=3D0x114ef53 , inherit=3D0, nargs=3D1, args=3D0x82d540) at editfns.c:2201 #6 0x010aa85a in Finsert (nargs=3D1, args=3D0x1f) at editfns.c:2245 #7 0x010224bf in Feval (form=3D58751694) at eval.c:2319 #8 0x0101f675 in Fprogn (args=3D58751710) at eval.c:415 #9 0x0101f5c2 in Fif (args=3D58751574) at eval.c:364 #10 0x010223c2 in Feval (form=3D58751550) at eval.c:2293 #11 0x0101f675 in Fprogn (args=3D61016206) at eval.c:415 #12 0x010a801e in Fsave_current_buffer (args=3D61016182) at editfns.c:1= 028 #13 0x010223c2 in Feval (form=3D61016174) at eval.c:2293 #14 0x0102287f in Feval (form=3D58751534) at eval.c:2404 #15 0x0101f675 in Fprogn (args=3D58751910) at eval.c:415 #16 0x01020541 in FletX (args=3D58751166) at eval.c:1012 #17 0x010223c2 in Feval (form=3D58752982) at eval.c:2293 #18 0x0101f675 in Fprogn (args=3D61016878) at eval.c:415 #19 0x0101f5c2 in Fif (args=3D61016862) at eval.c:364 #20 0x010223c2 in Feval (form=3D61016854) at eval.c:2293 #21 0x0102287f in Feval (form=3D58752902) at eval.c:2404 #22 0x0101f675 in Fprogn (args=3D58751926) at eval.c:415 #23 0x0102077e in Flet (args=3D58752894) at eval.c:1068 #24 0x010223c2 in Feval (form=3D58752822) at eval.c:2293 #25 0x0101f675 in Fprogn (args=3D58750126) at eval.c:415 #26 0x01023bb5 in funcall_lambda (fun=3D58750134, nargs=3D1, arg_vector=3D0x82e0b0) at eval.c:3204 #27 0x010238ec in apply_lambda (fun=3D58750134, args=3D58747454, eval_flag=3D1) at eval.c:3135 #28 0x010228a9 in Feval (form=3D58747446) at eval.c:2406 #29 0x010206b5 in Flet (args=3D58747478) at eval.c:1052 #30 0x010223c2 in Feval (form=3D58747398) at eval.c:2293 #31 0x0101f675 in Fprogn (args=3D58747630) at eval.c:415 #32 0x0101f634 in Fcond (args=3D58747718) at eval.c:392 #33 0x010223c2 in Feval (form=3D58747382) at eval.c:2293 #34 0x0101f675 in Fprogn (args=3D58808350) at eval.c:415 #35 0x01020541 in FletX (args=3D58748758) at eval.c:1012 #36 0x010223c2 in Feval (form=3D58750438) at eval.c:2293 #37 0x0101f675 in Fprogn (args=3D58808470) at eval.c:415 #38 0x01023bb5 in funcall_lambda (fun=3D58808478, nargs=3D3, arg_vector=3D0x82e790) at eval.c:3204 #39 0x010238ec in apply_lambda (fun=3D58808478, args=3D58804846, eval_flag=3D1) at eval.c:3135 #40 0x010228a9 in Feval (form=3D58804838) at eval.c:2406 #41 0x010206b5 in Flet (args=3D58804886) at eval.c:1052 #42 0x010223c2 in Feval (form=3D58804822) at eval.c:2293 #43 0x0101f4f7 in For (args=3D58805062) at eval.c:311 #44 0x010223c2 in Feval (form=3D58804766) at eval.c:2293 #45 0x0101f675 in Fprogn (args=3D58805070) at eval.c:415 #46 0x01020837 in Fwhile (args=3D58804758) at eval.c:1090 #47 0x010223c2 in Feval (form=3D58804606) at eval.c:2293 #48 0x0101f675 in Fprogn (args=3D58805142) at eval.c:415 #49 0x0102077e in Flet (args=3D58804550) at eval.c:1068 #50 0x010223c2 in Feval (form=3D58804238) at eval.c:2293 #51 0x0101f675 in Fprogn (args=3D58805198) at eval.c:415 #52 0x010a7fd4 in Fsave_excursion (args=3D58806230) at editfns.c:1012 #53 0x010223c2 in Feval (form=3D58806182) at eval.c:2293 #54 0x0101f675 in Fprogn (args=3D58803206) at eval.c:415 #55 0x01023bb5 in funcall_lambda (fun=3D58803214, nargs=3D2, arg_vector=3D0x82f204) at eval.c:3204 #56 0x01023777 in Ffuncall (nargs=3D3, args=3D0x82f200) at eval.c:3081 #57 0x011692ab in Fbyte_code (bytestr=3D19486977, vector=3D19486997, maxdepth=3D12) at bytecode.c:679 #58 0x01023c01 in funcall_lambda (fun=3D19486917, nargs=3D2, arg_vector=3D0x82f3a0) at eval.c:3211 #59 0x010238ec in apply_lambda (fun=3D19486917, args=3D61655158, eval_flag=3D1) at eval.c:3135 #60 0x010227be in Feval (form=3D61655166) at eval.c:2388 #61 0x010234c3 in Ffuncall (nargs=3D2, args=3D0x82f5d0) at eval.c:3024 #62 0x011692ab in Fbyte_code (bytestr=3D19335121, vector=3D19335141, maxdepth=3D20) at bytecode.c:679 #63 0x01023c01 in funcall_lambda (fun=3D19335069, nargs=3D2, arg_vector=3D0x82f814) at eval.c:3211 #64 0x010236e0 in Ffuncall (nargs=3D3, args=3D0x82f810) at eval.c:3070 #65 0x01022bb0 in Fapply (nargs=3D2, args=3D0x82f8b0) at eval.c:2503 #66 0x01022fda in apply1 (fn=3D45636330, arg=3D61704094) at eval.c:2773 #67 0x01166f1b in Fcall_interactively (function=3D45636330, record_flag=3D45279234, keys=3D45300485) at callint.c:396 #68 0x01023517 in Ffuncall (nargs=3D4, args=3D0x82fb40) at eval.c:3030 #69 0x010230af in call3 (fn=3D45430218, arg1=3D45636330, arg2=3D45279234, arg3=3D45279234) at eval.c:2850 #70 0x01014f56 in Fcommand_execute (cmd=3D45636330, record_flag=3D45279234, keys=3D45279234, special=3D45279234) at keyboard.c:10507 #71 0x0100789b in command_loop_1 () at keyboard.c:1904 #72 0x01020fe4 in internal_condition_case (bfun=3D0x100621d , handlers=3D45335770, hfun=3D0x1005c0e ) at eval.c:1490 #73 0x01005f82 in command_loop_2 () at keyboard.c:1360 #74 0x01020ad5 in internal_catch (tag=3D45334962, func=3D0x1005f5f , arg=3D45279234) at eval.c:1226 #75 0x01005f38 in command_loop () at keyboard.c:1339 #76 0x0100582a in recursive_edit_1 () at keyboard.c:954 #77 0x0100598e in Frecursive_edit () at keyboard.c:1016 #78 0x010027e6 in main (argc=3D4, argv=3D0xa92980) at emacs.c:1833 Lisp Backtrace: "insert" (0x82d540)