I got this backtrace (see below) when fontifying a Perl file. If anybody
is interested in the perl file, I can mail it. Let me know how I can
help further in fixing this.
--
Fabrice
The reason for the crash is that the 'text' member of the 'buf'
structure is null !
Here is the stack call by visual studio and below the lisp backtrace :
xemacs.exe!membpos_to_bytebpos(buffer * buf=0x014a3b98, long x=0x01463e90) Line 706 + 0xc C
xemacs.exe!byte_marker_position(long marker=0x014a3b98) Line 338 + 0xe C
xemacs.exe!signal_syntax_table_extent_changed(extent * extent=0x00af61c0) Line 420 + 0xb C
xemacs.exe!signal_single_extent_changed(extent * extent=0x00af61c0, long property=0x0149db08, long old_start=0x00000000, long old_end=0x00000000) Line 1777 C
xemacs.exe!signal_extent_changed(extent * extent=0x00af61c0, long property=0x0149db08, long old_start=0x00000000, long old_end=0x00000000, int descendants_too=0x00000001) Line 1818 C
xemacs.exe!signal_extent_property_changed(extent * extent=0x00af61c0, long property=0x0149db08, int descendants_too=0x00000001) Line 1825 C
xemacs.exe!Fset_extent_property(long extent=0x00af61c0, long property=0x0149db08, long value=0x03cf3990) Line 5722 C
xemacs.exe!put_text_prop(long start=0x000000cd, long end=0x000000ce, long object=0x03d05e38, long prop=0x0149db08, long value=0x03cf3990, int duplicable_p=0x00000001) Line 6905 C
xemacs.exe!Fput_text_property(long start=0x0000019b, long end=0x0000019d, long prop=0x0149db08, long value=0x03cf3990, long object=0x03d05e38) Line 6948 C
xemacs.exe!Ffuncall(int nargs=0x00000005, long * args=0x0280e294) Line 3842 + 0xd2 C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d98498, int stack_depth=0x00000006, long * constants_data=0x03898320) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x0387b820, int nargs=0x00000003, long * args=0x0280e560) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000004, long * args=0x0280e55c) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d91668, int stack_depth=0x00000010, long * constants_data=0x03caec88) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x0387b8d0, int nargs=0x00000005, long * args=0x0280e850) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000006, long * args=0x0280e84c) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d91528, int stack_depth=0x00000009, long * constants_data=0x03cfe1d0) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x03a2dc98, int nargs=0x00000001, long * args=0x0280eb24) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000002, long * args=0x0280eb20) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d91480, int stack_depth=0x00000006, long * constants_data=0x038b8738) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x0384ac64, int nargs=0x00000002, long * args=0x0280edec) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000003, long * args=0x0280ede8) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d91328, int stack_depth=0x00000006, long * constants_data=0x0384fa70) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x0384a94c, int nargs=0x00000003, long * args=0x0280f0b4) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000004, long * args=0x0280f0b0) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d912e0, int stack_depth=0x00000004, long * constants_data=0x038690a8) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x038238e8, int nargs=0x00000002, long * args=0x0280f374) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000003, long * args=0x0280f370) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d91220, int stack_depth=0x00000008, long * constants_data=0x0389afe0) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x0389a708, int nargs=0x00000005, long * args=0x0280f644) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000006, long * args=0x0280f640) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d911a8, int stack_depth=0x00000006, long * constants_data=0x0389af28) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x0389a6dc, int nargs=0x00000002, long * args=0x0280f90c) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000003, long * args=0x0280f908) Line 3881 + 0xf C
xemacs.exe!execute_optimized_program(const unsigned char * program=0x03d91160, int stack_depth=0x00000003, long * constants_data=0x0389aeb0) Line 609 + 0xe C
xemacs.exe!funcall_compiled_function(long fun=0x0389a6b0, int nargs=0x00000001, long * args=0x0280fbdc) Line 3452 + 0x1f C
xemacs.exe!Ffuncall(int nargs=0x00000002, long * args=0x0280fbd8) Line 3881 + 0xf C
xemacs.exe!call1(long fn=0x038c085c, long arg0=0x00956b00) Line 4487 + 0xd C
xemacs.exe!execute_internal_event(long event=0x0091edfc) Line 3065 C
xemacs.exe!Fdispatch_event(long event=0x0091edfc) Line 4569 C
xemacs.exe!Fcommand_loop_1() Line 571 C
xemacs.exe!command_loop_1(long dummy=0x014a3b98) Line 489 C
xemacs.exe!condition_case_1(long handlers=0x014a3328, long (long)* bfun=0x01087659, long barg=0x014a3b98, long (long, long)* hfun=0x01087398, long harg=0x014a3b98) Line 1917 + 0x9 C
xemacs.exe!command_loop_3() Line 255 C
xemacs.exe!command_loop_2(long dummy=0x014a3b98) Line 264 C
xemacs.exe!internal_catch(long tag=0x01468d08, long (long)* func=0x010874cc, long arg=0x014a3b98, int * volatile threw=0x00000000, long * volatile thrown_tag=0x00000000) Line 1527 + 0x6 C
xemacs.exe!initial_command_loop(long load_me=0x014a3b98) Line 306 C
xemacs.exe!xemacs_21_5_i586_pc_win32(int argc=0x00000001, char * * argv=0x007f36f8, char * * envp=0x007f3730, int restart=0x00000000) Line 2405 C
xemacs.exe!main(int argc=0x00000001, char * * argv=0x007f36f8, char * * envp=0x007f3730) Line 2836 C
xemacs.exe!mainCRTStartup() Line 259 + 0x19 C
Fatal error.
Your files have been auto-saved.
Use `M-x recover-session' to recover them.
Your version of XEmacs was distributed with a PROBLEMS file that may describe
your crash, and with luck a workaround. Please check it first, but do report
the crash anyway.
Please report this bug by invoking M-x report-emacs-bug, or by selecting
`Send Bug Report' from the Help menu. If that won't work, send ordinary
email to `crashes(a)xemacs.org'. *MAKE SURE* to include this entire output
from this crash, especially including the Lisp backtrace, as well as the
XEmacs configuration from M-x describe-installation (or equivalently, the
file `Installation' in the top of the build tree).
If you are fortunate enough to have some sort of debugging aid installed
on your system, for example Visual C++, and you can get a C stack backtrace,
*please* include it, as it will make our life far easier.
Lisp backtrace follows:
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
# (unwind-protect ...)
put-text-property(205 206 syntax-table (15))
# bind (at how noface string e bb)
cperl-commentify(205 378 t)
# (unwind-protect ...)
# (unwind-protect ...)
# bind (search stop-point cperl-nonoverridable-face font-lock-comment-face fon
t-lock-function-name-face font-lock-constant-face font-lock-string-face err-l st
-l state state-point use-syntax-state after-change-functions modified buffer-und
o-list inhibit-read-only case-fold-search tmpend go cperl-pod-here-fontify i2 wa
s-comment REx-comment-end REx-comment-start is-x-REx is-REx tb tail c i argument
e1 b1 qtag tag bb e b here-face head-face face ignore-max end non-inter max min
)
cperl-find-pods-heres(1 558 t nil t)
# bind (start dbg iend istate end)
cperl-fontify-syntaxically(558)
# bind (case-fold-search keywords keyword matcher highlights end start)
font-lock-fontify-syntactic-keywords-region(1 558)
# (unwind-protect ...)
# bind (modified buffer-undo-list inhibit-read-only old-syntax-table buffer-fi
le-name buffer-file-truename loudly end beg)
font-lock-default-fontify-region(1 558 nil)
# bind (loudly end beg)
font-lock-fontify-region(1 558)
# (unwind-protect ...)
# bind (match-data)
# (unwind-protect ...)
# bind (message verbose end start buffer)
lazy-shot-fontify-internal(#<buffer "tpm-factory.pl"> 1 519 t "")
# bind (start end buffer stealth extent)
lazy-shot-lock-extent(#<destroyed extent> nil)
# bind (extent)
lazy-shot-redisplay-function(#<destroyed extent>)
# (condition-case ... . error)
# (catch top-level ...)