--- Begin Message ---
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>,
address@hidden, address@hidden,
address@hidden) at textprop.c:194
#2 0x000000000054867b in Ftext_properties_at (address@hidden,
object=<optimized out>) at textprop.c:583
#3 0x00000000005486fc in Fget_text_property (address@hidden,
address@hidden, object=<optimized out>) at textprop.c:603
#4 0x00000000005488e7 in get_char_property_and_overlay (
address@hidden, address@hidden, object=<optimized out>,
address@hidden, address@hidden) at textprop.c:673
#5 0x0000000000548c37 in Fget_char_property (address@hidden,
address@hidden, address@hidden) at textprop.c:687
#6 0x00000000004f5334 in Fconstrain_to_field (new_pos=58, old_pos=86,
escape_from_edge=0, address@hidden,
address@hidden) 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, address@hidden,
arg_vector=0x7fffffffb550, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffb6a0, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffb800, address@hidden) 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, address@hidden, ---
arg_vector=0x7fffffffb958, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffbac0, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffbc18, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffbd70, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffbec8, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffc060, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffc210, address@hidden) 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, address@hidden,
arg_vector=0x7fffffffc390, address@hidden) at eval.c:2885
#41 0x00000000004fdb73 in Ffuncall (address@hidden,
address@hidden) 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, address@hidden,
arg_vector=0x7fffffffc620, address@hidden) 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, address@hidden,
address@hidden) at eval.c:2951
#49 0x00000000004fdb73 in Ffuncall (address@hidden,
address@hidden) 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, address@hidden,
address@hidden) at eval.c:2951
#54 0x00000000004fdb73 in Ffuncall (address@hidden,
address@hidden) at eval.c:2779
#55 0x00000000004fdf2a in call1 (address@hidden, address@hidden)
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 (
address@hidden) at keyboard.c:9949
#61 0x0000000000537c76 in wait_reading_process_output (
address@hidden, address@hidden,
address@hidden, address@hidden,
address@hidden, address@hidden,
address@hidden) at process.c:4689
#62 0x000000000040ff7c in sit_for (address@hidden,
address@hidden, address@hidden)
at dispnew.c:5742
#63 0x0000000000498507 in read_char (address@hidden,
address@hidden, prev_event=0,
address@hidden,
address@hidden) at keyboard.c:2780
#64 0x0000000000498fd1 in read_key_sequence (
address@hidden, address@hidden,
address@hidden,
address@hidden,
address@hidden,
address@hidden, bufsize=30)
at keyboard.c:9144
#65 0x000000000049a3e2 in command_loop_1 () at keyboard.c:1407
#66 0x00000000004fc1d2 in internal_condition_case (
address@hidden <command_loop_1>, address@hidden,
address@hidden <cmd_error>) at eval.c:1348
#67 0x000000000048f33c in command_loop_2 (address@hidden)
at keyboard.c:1139
---Type <return> to continue, or q <return> to quit---
#68 0x00000000004fc0db in internal_catch (address@hidden,
address@hidden <command_loop_2>, address@hidden) 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
--- End Message ---