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.