[21.5.27] Another crash, this time in search.c, reproducible

Holger Schauer Holger.Schauer at gmx.de
Fri Mar 2 03:58:54 EST 2007


Hello there,

writing some posting in Gnus (message), I got another crash. This time
it's reproducible with the autosaved message, which I'll append as
well as the backtrace.

Holger

-------------- next part --------------
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7aec9a1 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7aee2b9 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x080d7f23 in really_abort () at emacs.c:4693
#4  0x080d6c23 in assert_failed (file=0x82c5311 "search.c", line=1487,
    expr=0x82c59e4 "(this_pos) > ((Bytebpos) 1) && this_pos <= ((buf)->text->z + 0)") at emacs.c:3986
#5  0x0821493a in simple_search (buf=0x9825eb0,
    base_pat=0xbf929e30 "\200~nden", len=6, pos=2, lim=1, n=-1, trt=138933192)
    at search.c:1487
#6  0x08214442 in search_buffer (buf=0x9825eb0, string=151481484,
    charbpos=1869, buflim=1, n=-1, RE=0, trt=138933192, inverse_trt=138932000,
    posix=0) at search.c:1409
#7  0x08213ae4 in search_command (string=151481484, limit=3,
    noerror=137501764, count=137503132, buffer=137503132, direction=-1, RE=0,
    posix=0) at search.c:1155
#8  0x082160c9 in Fsearch_backward (string=151481484, limit=3,
    noerror=137501764, count=137503132, buffer=137503132) at search.c:2122
#9  0x080e07b6 in Ffuncall (nargs=4, args=0xbf92a0b4) at eval.c:3893
#10 0x0809d4e2 in execute_optimized_program (
    program=0x94ee518 "\212~\211\034\033\v~\"~\n\b~#\211\024~\031~~!\211\031:~\v\t@\n\230~\005\f\023~\004\fb\210)~~\v+\207)", stack_depth=5,
    constants_data=0x9558658) at bytecode.c:862
#11 0x080e02bc in funcall_compiled_function (fun=156810344, nargs=2,
    args=0xbf92a408) at eval.c:3495
#12 0x080e0a65 in Ffuncall (nargs=3, args=0xbf92a404) at eval.c:3932
#13 0x0809d4e2 in execute_optimized_program (
    program=0x95929f0 "t~\005\0160\026&\212~ \210`\036'~\016&!\031~\211\035\034~\211\032\033\t~a~\f~\016(!~\n\016( ~\005~\202\207\001\tA@\025\tAA@\024\t@\023\016)~a~\024\reV~9\rSf~a~2\rSf~a~+\0161~'\212\rSb\210~\v\r\f\rZTZ\"\211\036*~\a\016*\rSU?*~\v~\r\f~#\210~\2028\001\016+\ra~\021\016,\fa~\v\016-\v\230~\005\b\202\"\001\016)~a~\030~\t!~\023~\r!\210\f\rV~\006~\fS!\210~\202\005\001\r\026+\f\026,\v\026-~\016\"~\"\210~\016\"~\v~Q\""..., stack_depth=6, constants_data=0x95586c8)
    at bytecode.c:862
#14 0x080e02bc in funcall_compiled_function (fun=156810432, nargs=0,
    args=0xbf92a758) at eval.c:3495
#15 0x080e0a65 in Ffuncall (nargs=1, args=0xbf92a754) at eval.c:3932
#16 0x0809d4e2 in execute_optimized_program (
    program=0x95c9d90 "\f\032~ ~\017\212\016\017q\210\212\016\020b\210~ \210*~ ~\n~ \210p\021`\020~\024~\211\021\020\f9~\f\f~N~\a~\026\021~\026\022\r:~\037\r@@\r at A\036\016\033~\v\016\016\"~\t\212\vb\210~ \210)\rA\025*~~\n\211\026\023)\207i", stack_depth=4, constants_data=0x95585b0) at bytecode.c:862
#17 0x080e02bc in funcall_compiled_function (fun=156810256, nargs=0,
    args=0xbf92ab34) at eval.c:3495
#18 0x080e0a65 in Ffuncall (nargs=1, args=0xbf92ab30) at eval.c:3932
#19 0x080e1a4a in run_hook_with_args_in_buffer (buf=0x9825eb0, nargs=1,
#20 0x080e1aec in run_hook_with_args (nargs=1, args=0xbf92ab30,
    cond=RUN_HOOKS_TO_COMPLETION) at eval.c:4428
#21 0x080e1d76 in run_hook (hook=156883140) at eval.c:4497
#22 0x080e3c27 in safe_run_hook_trapping_problems_1 (puta=0x82fb004)
    at eval.c:5583
#23 0x080e298b in call_trapping_problems_2 (opaque=142890240) at eval.c:4933
#24 0x080dcbcd in call_with_condition_handler (
    handler=0x80e28de <flagged_a_squirmer>, handler_arg=142890240,
    fun=0x80e2953 <call_trapping_problems_2>, arg=142890240) at eval.c:2135
#25 0x080e29b6 in call_trapping_problems_1 (opaque=142890240) at eval.c:4939
#26 0x080dbf0c in internal_catch (tag=138993160,
    func=0x80e298d <call_trapping_problems_1>, arg=142890240,
    threw=0xbf92ace4, thrown_tag=0xbf92acec, backtrace_before_throw=0xbf92ace8)
    at eval.c:1530
#27 0x080e2e23 in call_trapping_problems (warning_class=137502100,
    warning_string=0x0, flags=131203, problem=0xbf92adb4,
    fun=0x80e3c10 <safe_run_hook_trapping_problems_1>, arg=0x82fb004)
    at eval.c:5212
#28 0x080e3cef in safe_run_hook_trapping_problems (warning_class=137492164,
    hook_symbol=137342980, flags=128) at eval.c:5605
#29 0x080f868e in post_command_hook () at event-stream.c:4384
#30 0x080f844f in execute_command_event (command_builder=0x89a4568,
    event=148753196) at event-stream.c:4291
#31 0x080f8ea3 in Fdispatch_event (event=148753196) at event-stream.c:4592
#32 0x080acb22 in Fcommand_loop_1 () at cmdloop.c:600
#33 0x080ac8f1 in command_loop_1 (unused_dummy=137503132) at cmdloop.c:505
#34 0x080dc478 in condition_case_1 (handlers=137502100,
    bfun=0x80ac8bf <command_loop_1>, barg=137503132,
    hfun=0x80ac4b1 <cmd_error>, harg=137503132) at eval.c:1924
#35 0x080ac5dd in command_loop_3 () at cmdloop.c:262
#36 0x080ac5ff in command_loop_2 (unused_dummy=137503132) at cmdloop.c:275
#37 0x080dbf0c in internal_catch (tag=137255188,
    func=0x80ac5f4 <command_loop_2>, arg=137503132, threw=0x0, thrown_tag=0x0,
    backtrace_before_throw=0x0) at eval.c:1530
#38 0x080ac715 in initial_command_loop (load_me=137503132) at cmdloop.c:313
#39 0x080d5974 in xemacs_21_5_b27_i686_pc_linux (argc=1, argv=0xbf92b324,
    unused_envp=0x0, restart=0) at emacs.c:2667
#40 0x080d6347 in main (argc=1, argv=0xbf92b324, unused_envp=0xbf92b32c)
    at emacs.c:3111
-------------- next part --------------
Newsgroups: de.comp.objekt
Subject: Re: MVC in einer Three-Tier-Architektur: Best practices?
X-Face: $A}9wQ|%@<1O92)sZUT){0S:|{n)53v<`YUWV]JTFq']fF]1z$:eg(h_JWxlp2ou/l$3~[l
 1SS4_7|\1JXZpDnbJ6$!L(E|{cr/0POOZR('-An~p.%1;/7q;tx*uN^Bbd4-)f.$iR at tWCciJ#^Y+8
 `8 at iUD^&C,Bmi]SdS7 at 9Y5>;TxJY@
--text follows this line--
On 4929 September 1993, Stefan Ram wrote:
> Holger Schauer <Holger.Schauer at gmx.de> writes:
>>Mir geht es wie gesagt, um Einsch?tzungen, was "?blich" oder
>>"praktikabel" ist. Ich finde bisher eigentlich nur Einstiegsliteratur,
>>die MVC prinzipiell erl?utert, die aber genau solche Fragen der
>>Objekterzeugung nicht abdeckt. Ich w?re auch f?r Literatur-Pointer
>>sehr dankbar.

>   Unter der ?berschrift ?Der Aufbau der Oberfl?che? habe ich 
>   das nach meinem Verst?ndnis klassische Verfahren beschrieben:
> http://www.purl.org/stefan_ram/pub/mvc
>   Implementationsbeispiele in Java:
> http://www.purl.org/stefan_ram/pub/java_swing_ereignisse_de

Wenn ich das richtig sehe, entspricht das meinem Vorschlag 2: Die
?bergeordnete View ?bernimmt die Erzeugung aller weiteren Objekte
(d.h. Erzeugung von Model, View und Controller f?r eingebettete Views)
und ben?tigt somit Wissen ?ber ein weiteres Fachkonzept (Erzeugung,
Materialisierung). Wie schr?g das ist, sieht man sehr sch?n in der
Implementation Deiner Klasse FrameView (in Deinem Abschnitt "Models"):
Die Klasse ist nicht mit dem ButtonModel oder dem ButtonController
assoziiert, muss sich aber dennoch um deren Erzeugung k?mmern.

Das hat etwa den Nebeneffekt, dass sich in dem Augenblick, in dem
anstelle des ButtonModel nun eine andere Klasse (etwa
UnicodeButtonModel) angezeigt werden soll, man ?berall da den
Sourcecode ?ndern muss, in dem eine ?bergeordnete View das ButtonView
anzeigen will. W?rde dagegen die Erzeugung des Models an das
ButtonView selber delegiert, w?re nur eine Stelle zu ?nden.



-- 
---          http://hillview.bugwriter.net/            ---
Fachbegriffe der Informatik - Einfach erkl?rt
32: Vaporware
       Dampf, den man der Konkurrenz macht. (nach Peter Berlich)
-------------- next part --------------
System Info to help track down your bug:
---------------------------------------

uname -a: Linux elendil 2.6.15-27-386 #1 PREEMPT Fri Dec 8 17:51:56 UTC 2006 i686 GNU/Linux

./configure '--with-mule' '--with-site-lisp' '--with-file-locking=lock' '--with-xim=no'


XEmacs 21.5-b27 "fiddleheads"  configured for `i686-pc-linux'.

Compilation Environment and Installation Defaults:
  Source code location:              /usr/local/src/xemacs-21.5.27
  Installation prefix:               /usr/local
  Operating system description file: `s/linux.h'
  Machine description file:          `m/intel386.h'
  Compiler version:                  gcc (GCC) 4.0.3 (Ubuntu 4.0.3-1ubuntu5)
    - GCC specs file:                specs.
    - Compiler command:              gcc   -Wall -Wno-switch -Wundef -Wsign-compare -Wno-char-subscripts -Wpacked -Wunused-parameter -g  
  libc version:                      GNU libc 2.3.6-0ubuntu20.2 (Debian)
  Relocating allocator for buffers:  no
  GNU version of malloc:             yes
    - Using Doug Lea's new malloc from the GNU C Library.

Window System:
  Compiling in support for the X window system:
    - X Windows headers location:                 /usr/X11R6/include
    - X Windows libraries location:               /usr/X11R6/lib
    - Handling WM_COMMAND properly.
  Using Lucid menubars.
  Using Lucid scrollbars.

TTY:
  Compiling in support for ncurses.

Images:
  Compiling in support for GIF  images (builtin).
  Compiling in support for XPM  images.
  Compiling in support for PNG  images.
  Compiling in support for X-Face message headers.

Sound:
  Compiling in support for sound (native).

Databases:
  Compiling in support for Berkeley database.
  Compiling in support for LDAP.
  Compiling in support for PostgreSQL.
    - Using PostgreSQL header file:  postgresql/libpq-fe.h
    - Using PostgreSQL V7 bindings.

Internationalization:
  Compiling in support for Mule (multi-lingual Emacs).

Mail:
  Compiling in support for "file" mail spool file locking method.

Other Features:
  Inhibiting IPv6 canonicalization at startup.
  Compiling in support for dynamic shared object modules.
  Using the new GC mark algorithms (KKCC).
  WARNING: ---------------------------------------------------------
  WARNING: The new algorithms are experimental. They are enabled by
  WARNING: default for this release. Use `--disable-kkcc' to
  WARNING: turn it off.
  WARNING: ---------------------------------------------------------
  Using the new portable dumper.
  Dumping into executable.
  Compiling in support for extra debugging code.
  Compiling in support for runtime error checking.
  WARNING: ---------------------------------------------------------
  WARNING: XEmacs will run noticeably more slowly as a result.
  WARNING: Error checking is on by default for XEmacs beta releases.
  WARNING: ---------------------------------------------------------
-------------- next part --------------

-- 
---          http://hillview.bugwriter.net/            ---
"Und? (--verbose)"
                  -- Jochem Huhmann in de.comp.os.unix.discussion


More information about the XEmacs-Beta mailing list