GNU bug report logs - #19852
25.0.50; show-paren-mode in sh-mode freezes Emacs

Previous Next

Package: emacs;

Reported by: Jorgen Schaefer <contact <at> jorgenschaefer.de>

Date: Fri, 13 Feb 2015 11:27:01 UTC

Severity: normal

Tags: moreinfo

Merged with 22112, 22381, 23445

Found in versions 24.5, 25.0.50

Fixed in versions 25.1, 25.1.50.1

Done: Marcin Borkowski <mbork <at> mbork.pl>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Jorgen Schaefer <contact <at> jorgenschaefer.de>
Subject: bug#19852: closed (Re: bug#19852: 25.0.50; show-paren-mode in
 sh-mode freezes Emacs)
Date: Sat, 19 Mar 2016 14:13:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#19852: 25.0.50; show-paren-mode in sh-mode freezes Emacs

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 19852 <at> debbugs.gnu.org.

-- 
19852: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19852
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Marcin Borkowski <mbork <at> mbork.pl>
To: Jorgen Schäfer <jorgen.schaefer <at> gmail.com>
Cc: 19852-done <at> debbugs.gnu.org
Subject: Re: bug#19852: 25.0.50; show-paren-mode in sh-mode freezes Emacs
Date: Sat, 19 Mar 2016 15:12:24 +0100
On 2016-03-19, at 14:31, Jorgen Schäfer <jorgen.schaefer <at> gmail.com> wrote:

> Yep, looks like this is fixed now. Thanks for checking it!

Thanks, so I'm closing this bug.

Best,

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University

[Message part 3 (message/rfc822, inline)]
From: Jorgen Schaefer <contact <at> jorgenschaefer.de>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.0.50; show-paren-mode in sh-mode freezes Emacs
Date: Fri, 13 Feb 2015 12:26:37 +0100
Emacs 25.0.50, no GUI, git ref cf498e5b9a, run with -Q, will freeze hard
and dump core when using show-paren-mode in certain situations with
files not ending with a newline.

Reproduction:

Create a file with these contents:

----
#!/bin/bash

if true
then
----

Do *not* include a final newline after the "then" line, possibly using
(setq require-final-newline nil).

Move point to the beginning of the file, enable `show-paren-mode', and
go down line by line. Once you hit next-line on the "i" of "if", Emacs
freezes. C-g will make it ask to auto-save and dump core.

Backtrace at that point from gdb:

Program received signal SIGINT, Interrupt.
find_interval (tree=0x131d8a0, position=21) at intervals.c:670
670           if (BUFFERP (parent))
(gdb) bt
#0  find_interval (tree=0x131d8a0, position=21) at intervals.c:670
#1  0x0000000000546a34 in validate_interval_range (object=<optimized out>,
    begin=begin <at> entry=0x7fffffffb1e8, end=end <at> entry=0x7fffffffb1e8,
    force=force <at> entry=false) at textprop.c:194
#2  0x000000000054867b in Ftext_properties_at (position=position <at> entry=86,
    object=<optimized out>) at textprop.c:583
#3  0x00000000005486fc in Fget_text_property (position=position <at> entry=86,
    prop=prop <at> entry=17232, object=<optimized out>) at textprop.c:603
#4  0x00000000005488e7 in get_char_property_and_overlay (
    position=position <at> entry=86, prop=prop <at> entry=17232, object=<optimized out>,
    object <at> entry=0, overlay=overlay <at> entry=0x0) at textprop.c:673
#5  0x0000000000548c37 in Fget_char_property (position=position <at> entry=86,
    prop=prop <at> entry=17232, object=object <at> entry=0) at textprop.c:687
#6  0x00000000004f5334 in Fconstrain_to_field (new_pos=58, old_pos=86,
    escape_from_edge=0, only_in_line=only_in_line <at> entry=39696,
    inhibit_capture_property=inhibit_capture_property <at> entry=0) at editfns.c:714
#7  0x00000000004f5547 in Fline_beginning_position (n=<optimized out>)
    at editfns.c:802
#8  0x00000000004fdd55 in Ffuncall (nargs=1, args=<optimized out>)
    at eval.c:2718
#9  0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=0, nargs=75, args=0x1) at bytecode.c:919
#10 0x00000000004fd8e8 in funcall_lambda (fun=14270420, nargs=nargs <at> entry=0,
    arg_vector=0x7fffffffb550, arg_vector <at> entry=0x7fffffffb6a8) at eval.c:2885
#11 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffb6a0)
    at eval.c:2779
#12 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=1, nargs=9, args=0x1) at bytecode.c:919
#13 0x00000000004fd8e8 in funcall_lambda (fun=14213108, nargs=nargs <at> entry=0,
    arg_vector=0x7fffffffb6a0, arg_vector <at> entry=0x7fffffffb808) at eval.c:2885
#14 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffb800)
    at eval.c:2779
#15 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=0, nargs=61, args=0x1) at bytecode.c:919
#16 0x00000000004fd8e8 in funcall_lambda (fun=14270420, nargs=nargs <at> entry=0,
    arg_vector=0x7fffffffb800, arg_vector <at> entry=0x7fffffffb960) at eval.c:2885
#17 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffb958)
    at eval.c:2779
#18 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=0, nargs=0, args=0x1) at bytecode.c:919
#19 0x00000000004fd8e8 in funcall_lambda (fun=14212852, nargs=nargs <at> entry=0, ---
    arg_vector=0x7fffffffb958, arg_vector <at> entry=0x7fffffffbac8) at eval.c:2885
#20 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffbac0)
    at eval.c:2779
#21 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=1, nargs=17, args=0x1) at bytecode.c:919
#22 0x00000000004fd8e8 in funcall_lambda (fun=14268180, nargs=nargs <at> entry=1,
    arg_vector=0x7fffffffbac0, arg_vector <at> entry=0x7fffffffbc20) at eval.c:2885
#23 0x00000000004fdb73 in Ffuncall (nargs=2, args=0x7fffffffbc18)
---Type <return> to continue, or q <return> to quit---
    at eval.c:2779
#24 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=0, nargs=146, args=0x2) at bytecode.c:919
#25 0x00000000004fd8e8 in funcall_lambda (fun=14270420, nargs=nargs <at> entry=0,
    arg_vector=0x7fffffffbc18, arg_vector <at> entry=0x7fffffffbd78) at eval.c:2885
#26 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffbd70)
    at eval.c:2779
#27 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=1, nargs=9, args=0x1) at bytecode.c:919
#28 0x00000000004fd8e8 in funcall_lambda (fun=14213108, nargs=nargs <at> entry=0,
    arg_vector=0x7fffffffbd70, arg_vector <at> entry=0x7fffffffbed0) at eval.c:2885
#29 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffbec8)
    at eval.c:2779
#30 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=0, nargs=37, args=0x1) at bytecode.c:919
#31 0x00000000004fd8e8 in funcall_lambda (fun=14269220, nargs=nargs <at> entry=0,
    arg_vector=0x7fffffffbec8, arg_vector <at> entry=0x7fffffffc068) at eval.c:2885
#32 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffc060)
    at eval.c:2779
#33 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=140737488339064, nargs=81, args=0x1)
    at bytecode.c:919
#34 0x00000000004fd8e8 in funcall_lambda (fun=20004260, nargs=nargs <at> entry=5,
    arg_vector=0x7fffffffc060, arg_vector <at> entry=0x7fffffffc218) at eval.c:2885
#35 0x00000000004fdb73 in Ffuncall (nargs=6, args=0x7fffffffc210)
    at eval.c:2779
#36 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=1, nargs=1, args=0x6) at bytecode.c:919
#37 0x00000000004fd8e8 in funcall_lambda (fun=20006292, nargs=nargs <at> entry=1,
    arg_vector=0x7fffffffc210, arg_vector <at> entry=0x7fffffffc398) at eval.c:2885
#38 0x00000000004fdb73 in Ffuncall (nargs=2, args=0x7fffffffc390)
    at eval.c:2779
#39 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=1, nargs=108, args=0x2) at bytecode.c:919
#40 0x00000000004fd8e8 in funcall_lambda (fun=20010868, nargs=nargs <at> entry=1,
    arg_vector=0x7fffffffc390, arg_vector <at> entry=0x7fffffffc630) at eval.c:2885
#41 0x00000000004fdb73 in Ffuncall (nargs=nargs <at> entry=2,
    args=args <at> entry=0x7fffffffc628) at eval.c:2779
#42 0x00000000004fec3b in Fapply (nargs=3, args=0x7fffffffc628) at eval.c:2289
#43 0x00000000004fdc5a in Ffuncall (nargs=4, args=0x7fffffffc620)
    at eval.c:2698
#44 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=0, nargs=0, args=0x4) at bytecode.c:919
#45 0x00000000004fd8e8 in funcall_lambda (fun=16412004, nargs=nargs <at> entry=0,
    arg_vector=0x7fffffffc620, arg_vector <at> entry=0x7fffffffc780) at eval.c:2885
#46 0x00000000004fdb73 in Ffuncall (nargs=1, args=0x7fffffffc778)
    at eval.c:2779
#47 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=0, nargs=6, args=0x1) at bytecode.c:919
---Type <return> to continue, or q <return> to quit---
#48 0x00000000004fd7d3 in funcall_lambda (fun=17070101, nargs=nargs <at> entry=0,
    arg_vector=arg_vector <at> entry=0x7fffffffca58) at eval.c:2951
#49 0x00000000004fdb73 in Ffuncall (nargs=nargs <at> entry=1,
    args=args <at> entry=0x7fffffffca50) at eval.c:2779
#50 0x00000000004fec3b in Fapply (nargs=2, args=0x7fffffffca50) at eval.c:2289
#51 0x00000000004fdc5a in Ffuncall (nargs=3, args=0x7fffffffca48)
    at eval.c:2698
#52 0x000000000053018d in exec_byte_code (bytestr=20043936, vector=21,
    maxdepth=15546869, args_template=1, nargs=140737488341592, args=0x3)
    at bytecode.c:919
#53 0x00000000004fd7d3 in funcall_lambda (fun=9342949, nargs=nargs <at> entry=1,
    arg_vector=arg_vector <at> entry=0x7fffffffcc18) at eval.c:2951
#54 0x00000000004fdb73 in Ffuncall (nargs=nargs <at> entry=2,
    args=args <at> entry=0x7fffffffcc10) at eval.c:2779
#55 0x00000000004fdf2a in call1 (fn=fn <at> entry=40320, arg1=arg1 <at> entry=17077685)
    at eval.c:2573
#56 0x000000000049220a in timer_check_2 (idle_timers=<optimized out>,
    timers=<optimized out>) at keyboard.c:4522
#57 timer_check () at keyboard.c:4589
#58 0x00000000004925a9 in readable_events (flags=<optimized out>)
    at keyboard.c:3422
#59 0x0000000000493888 in get_input_pending (flags=1) at keyboard.c:6804
#60 0x0000000000495ccc in detect_input_pending_run_timers (
    do_display=do_display <at> entry=true) at keyboard.c:9949
#61 0x0000000000537c76 in wait_reading_process_output (
    time_limit=time_limit <at> entry=30, nsecs=nsecs <at> entry=0,
    read_kbd=read_kbd <at> entry=-1, do_display=do_display <at> entry=true,
    wait_for_cell=wait_for_cell <at> entry=0, wait_proc=wait_proc <at> entry=0x0,
    just_wait_proc=just_wait_proc <at> entry=0) at process.c:4689
#62 0x000000000040ff7c in sit_for (timeout=timeout <at> entry=122,
    reading=reading <at> entry=true, display_option=display_option <at> entry=1)
    at dispnew.c:5742
#63 0x0000000000498507 in read_char (commandflag=commandflag <at> entry=1,
    map=map <at> entry=14515971, prev_event=0,
    used_mouse_menu=used_mouse_menu <at> entry=0x7fffffffd90b,
    end_time=end_time <at> entry=0x0) at keyboard.c:2780
#64 0x0000000000498fd1 in read_key_sequence (
    keybuf=keybuf <at> entry=0x7fffffffd9e0, prompt=prompt <at> entry=0,
    dont_downcase_last=dont_downcase_last <at> entry=false,
    can_return_switch_frame=can_return_switch_frame <at> entry=true,
    fix_current_buffer=fix_current_buffer <at> entry=true,
    prevent_redisplay=prevent_redisplay <at> entry=false, bufsize=30)
    at keyboard.c:9144
#65 0x000000000049a3e2 in command_loop_1 () at keyboard.c:1407
#66 0x00000000004fc1d2 in internal_condition_case (
    bfun=bfun <at> entry=0x49a1b0 <command_loop_1>, handlers=handlers <at> entry=15792,
    hfun=hfun <at> entry=0x490d80 <cmd_error>) at eval.c:1348
#67 0x000000000048f33c in command_loop_2 (ignore=ignore <at> entry=0)
    at keyboard.c:1139
---Type <return> to continue, or q <return> to quit---
#68 0x00000000004fc0db in internal_catch (tag=tag <at> entry=40800,
    func=func <at> entry=0x48f320 <command_loop_2>, arg=arg <at> entry=0) at eval.c:1108
#69 0x000000000048f2f7 in command_loop () at keyboard.c:1118
#70 0x0000000000490983 in recursive_edit_1 () at keyboard.c:728
#71 0x0000000000490cad in Frecursive_edit () at keyboard.c:799
#72 0x0000000000406bc3 in main (argc=<optimized out>, argv=<optimized out>)
    at emacs.c:1607


In GNU Emacs 25.0.50.1 (x86_64-unknown-linux-gnu)
 of 2015-02-07 on loki.jorgenschaefer.de
Repository revision: cf498e5b9a73329edea0bdbf1bd8dfe06fdd75e2
System Description:	Debian GNU/Linux 7.8 (wheezy)

Configured using:
 `configure --without-x'

Configured features:
SOUND NOTIFY LIBXML2 ZLIB

Important settings:
  value of $LC_ALL: 
  value of $LC_COLLATE: de_DE.UTF-8
  value of $LC_CTYPE: de_DE.UTF-8
  value of $LC_MESSAGES: POSIX
  value of $LC_MONETARY: POSIX
  value of $LC_NUMERIC: POSIX
  value of $LC_TIME: POSIX
  value of $LANG: POSIX
  locale-coding-system: utf-8-unix



This bug report was last modified 9 years and 73 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.