Configuration Information [Automatically generated, do not change]:
uname: FreeBSD think.park.rambler.ru 7.0-CURRENT FreeBSD 7.0-CURRENT #0: Wed 
Jun  6 14:24:47 MSD 2007     [EMAIL 
PROTECTED]:/usr/obj/usr/src/sys/THINKPAD_T60  i386
compiler flags: cc -Wall -Wno-implicit-int -O2 -fno-strict-aliasing -pipe -g 

FVWM Version:   2.5.21
FVWM_MODULEDIR: /usr/local/libexec/fvwm/2.5.21
FVWM_DATADIR:   /usr/local/share/fvwm
FVWM_USERDIR:   unset

Description:
        fvwm is crashing on startup. Log:

[FVWM-Themes]: Welcome to FVWM Themes 0.7.0!
[FVWM-Themes]: Starting FVWM under the main fvwm-themes session
[FVWM][style_parse_and_set_window_style]: <<WARNING>> Unconsumed argument in 
MWMButtons  # button relief follows the state: # bu
tton relief follows the state
[FVWM][style_parse_and_set_window_style]: <<WARNING>> Unconsumed argument in 
NoActiveIconOverride  # enable: xterm +ai: # enable
: xterm +ai
[FVWM][FlocaleGetFontSet]: (-adobe-times-bold-r-*-*-14-*) Missing font charsets:
KOI8-R
[fvwm-themes-root]: No utilities found to set root image 
/usr/local/share/fvwm/themes/default/images/background/fvwm-wallpaper-t
igerskin.jpg
        Falling back to default image 
/usr/local/share/fvwm/images/background/stone.xpm
[FvwmButtons][FlocaleLoadFont]: WARNING -- Unknown charset for font
        'fixed'
[FvwmPager-Single][FlocaleGetFontSet]: (-adobe-helvetica-bold-r-*-*-10-*) 
Missing font charsets:
KOI8-R
Segmentation fault (core dumped)

waiting for X server to shut down X connection to :0.0 broken (explicit kill or 
server shutdown).

        Informantion from core:

(gdb) bt
#0  0x0806b783 in My_XNextEvent (dpy=0x2860a800, event=0xbfbfe5b4) at 
events.c:4108
#1  0x0806b8ba in HandleEvents () at events.c:3924
#2  0x0808c6bf in main (argc=3, argv=0xbfbfecbc) at fvwm.c:2587
(gdb) frame 0
#0  0x0806b783 in My_XNextEvent (dpy=0x2860a800, event=0xbfbfe5b4) at 
events.c:4108
4108                            if (
(gdb) list
4103                            {
4104                                    input = module_receive(module);
4105                                    /* enqueue the received command */
4106                                    module_input_enqueue(input);
4107                            }
4108                            if (
4109                                    MOD_WRITEFD(module) >= 0 &&
4110                                    FD_ISSET(MOD_WRITEFD(module), 
&out_fdset))
4111                            {
4112                                    DBUG("My_XNextEvent",
(gdb) p module
$2 = (fmodule *) 0x286d3dc0
(gdb) p *module
$9 = {xflags = {is_cmdline_module = 1515870810}, xreadPipe = 1515870810, 
xwritePipe = 1515870810, xpipeQueue = {
    first = 0x5a5a5a5a, last = 0x5a5a5a5a, lock_level = 1515870810, flags = 
{is_dirty = 0}}, xPipeMask = {m1 = 1515870810,
    m2 = 1515870810}, xNoGrabMask = {m1 = 1515870810, m2 = 1515870810}, 
xSyncMask = {m1 = 1515870810, m2 = 1515870810},
  xname = 0x5a5a5a5a <Address 0x5a5a5a5a out of bounds>, xalias = 0x5a5a5a5a 
<Address 0x5a5a5a5a out of bounds>,
  xnext = 0x5a5a5a5a}
(gdb) p module_list
$3 = (fmodule *) 0x286d3e40
(gdb) p module_list->xnext
$4 = (struct fmodule *) 0x286d3d80
(gdb) p *module_list
$5 = {xflags = {is_cmdline_module = 0}, xreadPipe = 14, xwritePipe = 13, 
xpipeQueue = {first = 0x0, last = 0x0,
    lock_level = 0, flags = {is_dirty = 1}}, xPipeMask = {m1 = 1955394523, m2 = 
25}, xNoGrabMask = {m1 = 0, m2 = 0},
  xSyncMask = {m1 = 0, m2 = 0}, xname = 0x286d5590 "FvwmPager", xalias = 
0x286ef400 "FvwmPager-Single", xnext = 0x286d3d80}
(gdb) p *module_list->xnext
$6 = {xflags = {is_cmdline_module = 0}, xreadPipe = 10, xwritePipe = 9, 
xpipeQueue = {first = 0x0, last = 0x0,
    lock_level = 0, flags = {is_dirty = 1}}, xPipeMask = {m1 = 138674944, m2 = 
2013265919}, xNoGrabMask = {m1 = 4195072,
    m2 = 0}, xSyncMask = {m1 = 4195072, m2 = 0}, xname = 0x286d53c0 
"FvwmAnimate", xalias = 0x0, xnext = 0x286d3d40}
(gdb) p *module_list->xnext->xnext
$7 = {xflags = {is_cmdline_module = 0}, xreadPipe = 8, xwritePipe = 7, 
xpipeQueue = {first = 0x28603ab0, last = 0x28603ab0,
    lock_level = 0, flags = {is_dirty = 1}}, xPipeMask = {m1 = 1875181507, m2 = 
9}, xNoGrabMask = {m1 = 768, m2 = 0},
  xSyncMask = {m1 = 768, m2 = 0}, xname = 0x286d53b0 "FvwmIconMan", xalias = 
0x0, xnext = 0x286d3d00}
(gdb) p *module_list->xnext->xnext->xnext
$8 = {xflags = {is_cmdline_module = 0}, xreadPipe = 6, xwritePipe = 5, 
xpipeQueue = {first = 0x0, last = 0x0, lock_level = 0,
    flags = {is_dirty = 1}}, xPipeMask = {m1 = 1749906434, m2 = 8}, xNoGrabMask 
= {m1 = 0, m2 = 0}, xSyncMask = {m1 = 0,
    m2 = 0}, xname = 0x286d53a0 "FvwmButtons", xalias = 0x0, xnext = 0x0}
(gdb) p *module_list->xnext->xnext->xnext->xnext
Cannot access memory at address 0x0

        Please note, that 0x5a is a special trash that FreeBSD memory allocator 
fills freed memory with.

Repeat-By:
        Fresh installation of FreeBSD, fresh installation of X.Org 7.2, 
fvwm-2.5.21 from
        FreeBSD ports, and fvwm-themes from FreeBSD ports. Default 
configuration files
        in systems dirs, no configuration files in users home.

        ~/.xinitrc contaions one line:

        /usr/local/bin/fvwm-themes-start

        Run startx, see fvwm started, wait for several seconds. Crash.

Fix:
        I can't understand why module points into a freed region of memory 
here. The single list searching loop
        seems correct at the first glance.

Reply via email to