After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 88015 - Sawfish crashes shortly after changing the font
Sawfish crashes shortly after changing the font
Status: RESOLVED FIXED
Product: Sawfish
Classification: Deprecated
Component: Window Manager
pre-1.3.x
Other other
: Normal normal
: 1.5.x
Assigned To: John Harper
sawfish QA Team
Depends on:
Blocks:
 
 
Reported: 2002-07-12 12:10 UTC by Christian Marillat
Modified: 2009-08-16 15:13 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Christian Marillat 2002-07-12 12:10:17 UTC
Hi,

I'm opening a new bug report related to a sawfish crash.

http://bugs.debian.org/152530

Here is a backtrace and a valgrind output :

Program received signal SIGSEGV, Segmentation fault.
0x403399e0 in free () from /lib/libc.so.6
(gdb) bt
  • #0 free
    from /lib/libc.so.6
  • #1 free
    from /lib/libc.so.6
  • #2 rep_concat4
    from /usr/lib/librep.so.9
  • #3 Fgarbage_collect
    from /usr/lib/librep.so.9
  • #4 rep_lispcmds_init
    from /usr/lib/librep.so.9
  • #5 rep_lispcmds_init
    from /usr/lib/librep.so.9
  • #6 rep_apply_bytecode
    from /usr/lib/librep.so.9
  • #7 Fload_autoload
    from /usr/lib/librep.so.9
  • #8 Ffuncall
    from /usr/lib/librep.so.9
  • #9 Fcall_hook
    from /usr/lib/librep.so.9
  • #10 Fcall_window_hook
  • #11 map_request
  • #12 deregister_event_handler
  • #13 rep_call_with_barrier
    from /usr/lib/librep.so.9
  • #14 handle_input_mask
  • #15 handle_sync_input
  • #16 rep_proc_periodically
    from /usr/lib/librep.so.9
  • #17 rep_event_loop
    from /usr/lib/librep.so.9
  • #18 Frecursive_edit
    from /usr/lib/librep.so.9
  • #19 rep_top_level_recursive_edit
    from /usr/lib/librep.so.9
  • #20 Fexit_type
  • #21 rep_call_with_barrier
    from /usr/lib/librep.so.9
  • #22 main
  • #23 __libc_start_main
    from /lib/libc.so.

Also, here is the output from valgrind:


Script started on Fri Jul 12 11:36:49 2002
everest:~>valgrind sawfish
==1597== valgrind-1.0pre2, a memory error detector for x86 GNU/Linux.
==1597== Copyright (C) 2000-2002, and GNU GPL'd, by Julian Seward.
==1597== Estimated CPU clock rate is 2014 MHz
==1597== For more details, rerun with: -v
==1597== 
==1597== Conditional jump or move depends on uninitialised value(s)
==1597==    at 0x405668D0: (within /lib/libc-2.2.5.so)
==1597==    by 0x434105F2: (within /lib/libnss_files-2.2.5.so)
==1597==    by 0x405D00EB: (within /lib/libc-2.2.5.so)
==1597==    by 0x405CFAC9: (within /lib/libc-2.2.5.so)
==1597== 
==1597== Conditional jump or move depends on uninitialised value(s)
==1597==    at 0x40275B05: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4027748A: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4025AFD9: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4025F74B: (within /usr/lib/librep.so.9.3.0)
==1597== 
==1597== Conditional jump or move depends on uninitialised value(s)
==1597==    at 0x40275B05: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4027748A: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x40264E97: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x40264F67: (within /usr/lib/librep.so.9.3.0)
==1597== 
==1597== Conditional jump or move depends on uninitialised value(s)
==1597==    at 0x40275B05: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4027748A: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4025A471: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4025A9BA: (within /usr/lib/librep.so.9.3.0)
==1597== 
==1597== Syscall param writev(vector[...]) contains uninitialised or
unaddressable byte(s)
==1597==    at 0x405BB037: (within /lib/libc-2.2.5.so)
==1597==    by 0x404433C3: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40443EDB: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40429741: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    Address 0x430F301D is 901 bytes inside a block of size 2048 alloc'd
==1597==    at 0x4004404F: calloc (vg_clientfuncs.c:221)
==1597==    by 0x4041C236: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x8054B9C: (within /usr/bin/sawfish)
==1597==    by 0x8064411: (within /usr/bin/sawfish)
==1597== 
==1597== Conditional jump or move depends on uninitialised value(s)
==1597==    at 0x40275B05: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4027748A: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x40265DB1: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4027A06E: (within /usr/lib/librep.so.9.3.0)
==1597== 
==1597== Conditional jump or move depends on uninitialised value(s)
==1597==    at 0x40275B05: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4027748A: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x40264CAA: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x402623A9: (within /usr/lib/librep.so.9.3.0)
[ sawfish now loaded ]
==1597== 
==1597== Conditional jump or move depends on uninitialised value(s)
==1597==    at 0x40275B05: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x4027748A: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x40264E97: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x402623A9: (within /usr/lib/librep.so.9.3.0)
[ configurator loaded ]
[ Browse clicked ]
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x4043F31B: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x404845AD: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid free() / delete / delete[]
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x8057DB8: (within /usr/bin/sawfish)
==1597==    by 0x8057E3F: (within /usr/bin/sawfish)
==1597==    by 0x8058093: (within /usr/bin/sawfish)
==1597==    by 0x8057852: (within /usr/bin/sawfish)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x8057DB8: (within /usr/bin/sawfish)
==1597==    by 0x8057E50: (within /usr/bin/sawfish)
==1597==    by 0x8058093: (within /usr/bin/sawfish)
==1597==    by 0x8057852: (within /usr/bin/sawfish)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x8057DB8: (within /usr/bin/sawfish)
==1597==    by 0x8057E64: (within /usr/bin/sawfish)
==1597==    by 0x8058093: (within /usr/bin/sawfish)
==1597==    by 0x8057852: (within /usr/bin/sawfish)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x8057EF8: (within /usr/bin/sawfish)
==1597==    by 0x8058093: (within /usr/bin/sawfish)
==1597==    by 0x8057852: (within /usr/bin/sawfish)
==1597==    by 0x40261FC5: (within /usr/lib/librep.so.9.3.0)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x4053CF0E: (within /lib/libc-2.2.5.so)
==1597==    by 0x405587FA: (within /lib/libc-2.2.5.so)
==1597==    by 0x40544371: (within /lib/libc-2.2.5.so)
==1597==    by 0x8057F5B: (within /usr/bin/sawfish)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x4043F415: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x404845AD: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    Address 0x43D6B57F is 1 bytes before a block of size 61 alloc'd
==1597==    at 0x40043BDB: malloc (vg_clientfuncs.c:100)
==1597==    by 0x4043F38C: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==1597==    by 0x8057801: (within /usr/bin/sawfish)
==1597==    by 0x40261FC5: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x402623A9: (within /usr/lib/librep.so.9.3.0)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid read of size 1
==1597==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==1597==    by 0x8057801: (within /usr/bin/sawfish)
==1597==    by 0x40261FC5: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x402623A9: (within /usr/lib/librep.so.9.3.0)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==1597==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==1597== 
==1597== Invalid free() / delete / delete[]
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x4027640D: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x402774A9: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x40265DB1: (within /usr/lib/librep.so.9.3.0)
==1597==    Address 0x43182C20 is 0 bytes inside a block of size 1 free'd
==1597==    at 0x40043E72: free (vg_clientfuncs.c:171)
==1597==    by 0x4027640D: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x402774A9: (within /usr/lib/librep.so.9.3.0)
==1597==    by 0x40265DB1: (within /usr/lib/librep.so.9.3.0)
[ OK in font box clicked ]
[ configurator closed ]
Comment 1 John Harper 2002-07-12 18:11:19 UTC
Thanks. That's a great bug report.

This patch fixes some of the librep errors, but not the ones causing
the crash probably:

--- tuples.c	11 Jul 2000 12:46:32 -0000	1.2
+++ tuples.c	12 Jul 2002 18:04:51 -0000
@@ -51,8 +51,12 @@ rep_make_tuple (repv car, repv a, repv b
 	    sb->next = tuple_block_chain;
 	    tuple_block_chain = sb;
 	    for (i = 0; i < (rep_TUPLEBLK_SIZE - 1); i++)
+
    {
 
	sb->tuples[i].a = rep_VAL (&sb->tuples[i + 1]);
+
	sb->tuples[i].car = 0;
+
    }
 	    sb->tuples[i].a = rep_VAL (tuple_freelist);
+
    sb->tuples[i].car = 0;
 	    tuple_freelist = sb->tuples;
 	}
 	else

However, I can't reproduce the double free here. Presumably this is a
debian system. Is it i386? If so is there a set of packages I can
install to replicate the environment (I currently have the "testing"
distribution installed)
Comment 2 Thomas Leonard 2002-07-13 14:28:22 UTC
OK, I've recompiled it and now some of the errors at the start
have gone away. Also, it didn't crash this time (although that was a 
bit intermittent anyway).

Selecting a font still doesn't actually change the font, though!
The font list shows the XFt fonts, but the window title bars are
rendered with an old-style blocky font.

> valgrind sawfish
==30116== valgrind-1.0pre2, a memory error detector for x86 GNU/Linux.
==30116== Copyright (C) 2000-2002, and GNU GPL'd, by Julian Seward.
==30116== Estimated CPU clock rate is 2002 MHz
==30116== For more details, rerun with: -v
==30116== 
==30116== Conditional jump or move depends on uninitialised value(s)
==30116==    at 0x405668D0: (within /lib/libc-2.2.5.so)
==30116==    by 0x434105F2: (within /lib/libnss_files-2.2.5.so)
==30116==    by 0x405D00EB: (within /lib/libc-2.2.5.so)
==30116==    by 0x405CFAC9: (within /lib/libc-2.2.5.so)
==30116== 
==30116== Syscall param writev(vector[...]) contains uninitialised or
unaddressable byte(s)
==30116==    at 0x405BB037: (within /lib/libc-2.2.5.so)
==30116==    by 0x404433C3: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40443EDB: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40429741: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    Address 0x430F313A is 1166 bytes inside a block of size
2048 alloc'd
==30116==    at 0x4004404F: calloc (vg_clientfuncs.c:221)
==30116==    by 0x4041C236: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x8054B9C: (within /usr/bin/sawfish)
==30116==    by 0x8064411: (within /usr/bin/sawfish)
[ sawfish started ]
[ configurator loaded ]
[ Browse clicked ]
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x4043F31B: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x404845AD: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid free() / delete / delete[]
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x8057DB8: (within /usr/bin/sawfish)
==30116==    by 0x8057E3F: (within /usr/bin/sawfish)
==30116==    by 0x8058093: (within /usr/bin/sawfish)
==30116==    by 0x8057852: (within /usr/bin/sawfish)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x8057DB8: (within /usr/bin/sawfish)
==30116==    by 0x8057E50: (within /usr/bin/sawfish)
==30116==    by 0x8058093: (within /usr/bin/sawfish)
==30116==    by 0x8057852: (within /usr/bin/sawfish)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x8057DB8: (within /usr/bin/sawfish)
==30116==    by 0x8057E64: (within /usr/bin/sawfish)
==30116==    by 0x8058093: (within /usr/bin/sawfish)
==30116==    by 0x8057852: (within /usr/bin/sawfish)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x8057EF8: (within /usr/bin/sawfish)
==30116==    by 0x8058093: (within /usr/bin/sawfish)
==30116==    by 0x8057852: (within /usr/bin/sawfish)
==30116==    by 0x40261FC5: (within /usr/lib/librep.so.9.3.0)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x4053CF0E: (within /lib/libc-2.2.5.so)
==30116==    by 0x405587FA: (within /lib/libc-2.2.5.so)
==30116==    by 0x40544371: (within /lib/libc-2.2.5.so)
==30116==    by 0x8057F5B: (within /usr/bin/sawfish)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x4043F415: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x404845AD: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    Address 0x43D4C01B is 1 bytes before a block of size 61
alloc'd
==30116==    at 0x40043BDB: malloc (vg_clientfuncs.c:100)
==30116==    by 0x4043F38C: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==30116==    by 0x8057801: (within /usr/bin/sawfish)
==30116==    by 0x40261FC5: (within /usr/lib/librep.so.9.3.0)
==30116==    by 0x402623A9: (within /usr/lib/librep.so.9.3.0)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==30116==    by 0x8057801: (within /usr/bin/sawfish)
==30116==    by 0x40261FC5: (within /usr/lib/librep.so.9.3.0)
==30116==    by 0x402623A9: (within /usr/lib/librep.so.9.3.0)
==30116==    Address 0x43103A4C is 0 bytes inside a block of size 1 free'd
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==30116==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==30116== 
==30116== Invalid read of size 1
==30116==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==30116==    by 0x8057801: (within /usr/bin/sawfish)
==30116==    by 0x40261FC5: (within /usr/lib/librep.so.9.3.0)
==30116==    by 0x402623A9: (within /usr/lib/librep.so.9.3.0)
==30116==    Address 0x43103A4C is not stack'd, malloc'd or free'd
==30116== 
==30116== Invalid free() / delete / delete[]
==30116==    at 0x40043E72: free (vg_clientfuncs.c:171)
==30116==    by 0x4027642D: (within /usr/lib/librep.so.9.3.0)
==30116==    by 0x402774C9: (within /usr/lib/librep.so.9.3.0)
==30116==    by 0x40265DB1: (within /usr/lib/librep.so.9.3.0)
==30116==    Address 0x43103A4C is not stack'd, malloc'd or free'd
[ OK in font box clicked ]
[ configurator closed ]
Comment 3 John Harper 2002-07-13 19:48:53 UTC
Bug 86107 and duplicates cover not being able to set a font.

I'm interested in fixing some of the valgrind errors. Could you
recompile sawfish and librep with debugging symbols and run it again?
Comment 4 Thomas Leonard 2002-07-14 11:05:34 UTC
everest:~>valgrind sawfish
==25129== valgrind-1.0pre2, a memory error detector for x86 GNU/Linux.
==25129== Copyright (C) 2000-2002, and GNU GPL'd, by Julian Seward.
==25129== Estimated CPU clock rate is 2002 MHz
==25129== For more details, rerun with: -v
==25129== 
==25129== Conditional jump or move depends on uninitialised value(s)
==25129==    at 0x405668D0: (within /lib/libc-2.2.5.so)
==25129==    by 0x434105F2: (within /lib/libnss_files-2.2.5.so)
==25129==    by 0x405D00EB: (within /lib/libc-2.2.5.so)
==25129==    by 0x405CFAC9: (within /lib/libc-2.2.5.so)
==25129== 
==25129== Syscall param writev(vector[...]) contains uninitialised or
unaddressable byte(s)
==25129==    at 0x405BB037: (within /lib/libc-2.2.5.so)
==25129==    by 0x404433C3: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40443EDB: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40429741: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    Address 0x430F314E is 1166 bytes inside a block of size
2048 alloc'd
==25129==    at 0x4004404F: calloc (vg_clientfuncs.c:221)
==25129==    by 0x4041C236: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x8054B9C: sys_init (display.c:320)
==25129==    by 0x8064411: main (main.c:397)
[ configurator loaded ]
[ Browse clicked ]
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x4043F31B: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x404845AD: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid free() / delete / delete[]
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x8057DB8: xlfd_get_element (fonts.c:306)
==25129==    by 0x8057E3F: generalize_xlfd (fonts.c:330)
==25129==    by 0x8058093: x_create_font_set (fonts.c:411)
==25129==    by 0x8057852: Fget_font (fonts.c:83)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x8057DB8: xlfd_get_element (fonts.c:306)
==25129==    by 0x8057E50: generalize_xlfd (fonts.c:331)
==25129==    by 0x8058093: x_create_font_set (fonts.c:411)
==25129==    by 0x8057852: Fget_font (fonts.c:83)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x8057DB8: xlfd_get_element (fonts.c:306)
==25129==    by 0x8057E64: generalize_xlfd (fonts.c:332)
==25129==    by 0x8058093: x_create_font_set (fonts.c:411)
==25129==    by 0x8057852: Fget_font (fonts.c:83)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x8057EF8: generalize_xlfd (fonts.c:347)
==25129==    by 0x8058093: x_create_font_set (fonts.c:411)
==25129==    by 0x8057852: Fget_font (fonts.c:83)
==25129==    by 0x40261FC5: ??? (lispmach.h:637)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x4053CF0E: (within /lib/libc-2.2.5.so)
==25129==    by 0x405587FA: (within /lib/libc-2.2.5.so)
==25129==    by 0x40544371: (within /lib/libc-2.2.5.so)
==25129==    by 0x8057F5B: generalize_xlfd (fonts.c:356)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x4043F415: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x404845AD: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    Address 0x431A6057 is 1 bytes before a block of size 61
alloc'd
==25129==    at 0x40043BDB: malloc (vg_clientfuncs.c:100)
==25129==    by 0x4043F38C: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40483B5B: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048415B: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==25129==    by 0x8057801: Fget_font (fonts.c:69)
==25129==    by 0x40261FC5: ??? (lispmach.h:637)
==25129==    by 0x402623A9: ??? (lispmach.h:500)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==25129==    by 0x8057801: Fget_font (fonts.c:69)
==25129==    by 0x40261FC5: ??? (lispmach.h:637)
==25129==    by 0x402623A9: ??? (lispmach.h:500)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid read of size 1
==25129==    at 0x400444BA: strcmp (vg_clientfuncs.c:424)
==25129==    by 0x8057801: Fget_font (fonts.c:69)
==25129==    by 0x40261FC5: ??? (lispmach.h:637)
==25129==    by 0x402623A9: ??? (lispmach.h:500)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x404843D9: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x4048460A: (within /usr/X11R6/lib/libX11.so.6.2)
==25129==    by 0x40440125: (within /usr/X11R6/lib/libX11.so.6.2)
==25129== 
==25129== Invalid free() / delete / delete[]
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x4027642D: ??? (values.c:362)
==25129==    by 0x402774C9: Fgarbage_collect (values.c:1035)
==25129==    by 0x40265DB1: rep_on_idle (main.c:359)
==25129==    Address 0x430ABAC4 is 0 bytes inside a block of size 1 free'd
==25129==    at 0x40043E72: free (vg_clientfuncs.c:171)
==25129==    by 0x4027642D: ??? (values.c:362)
==25129==    by 0x402774C9: Fgarbage_collect (values.c:1035)
==25129==    by 0x40265DB1: rep_on_idle (main.c:359)
[ font selected ]
[ configurator closed ]
Comment 5 John Harper 2002-07-14 18:34:17 UTC
Thanks, unfortunately I have no idea how these errors could be
caused.. Maybe some kind of garbage collection bug, I'm not sure..
Comment 6 Christian Marillat 2002-11-23 21:55:53 UTC
this bug is fixed in 1.2