Bug 3286

Summary: gtkcmclist.c: Invalid read of size 4, valgrind reported bug
Product: Claws Mail (GTK 2) Reporter: Timo Teräs <timo.teras>
Component: UIAssignee: users
Status: NEW ---    
Severity: normal    
Priority: P3    
Version: 3.10.1   
Hardware: PC   
OS: Linux   

Description Timo Teräs 2014-09-19 15:10:25 UTC
==2393== Invalid read of size 4
==2393==    at 0x3C405A: scroll_horizontal (gtkcmclist.c:7049)
==2393==    by 0x79474E5: g_closure_invoke (gclosure.c:768)
==2393==    by 0x7958786: signal_emit_unlocked_R (gsignal.c:3589)
==2393==    by 0x572E418: ??? (in /usr/lib/libgtk-x11-2.0.so.0.2400.23)
==2393==    by 0x572E581: ??? (in /usr/lib/libgtk-x11-2.0.so.0.2400.23)
==2393==    by 0x572E77E: ??? (in /usr/lib/libgtk-x11-2.0.so.0.2400.23)
==2393==    by 0x572F93E: gtk_bindings_activate_event (in /usr/lib/libgtk-x11-2.0.so.0.2400.23)
==2393==    by 0x57E8C35: ??? (in /usr/lib/libgtk-x11-2.0.so.0.2400.23)
==2393==    by 0x79474E5: g_closure_invoke (gclosure.c:768)
==2393==    by 0x7958786: signal_emit_unlocked_R (gsignal.c:3589)
==2393==    by 0x795CEE1: g_signal_emit_valist (gsignal.c:3317)
==2393==    by 0x795D106: g_signal_emit (gsignal.c:3363)
==2393==  Address 0xf0de978 is 8 bytes after a block of size 256 alloc'd
==2393==    at 0x4C8F9FE: malloc (vg_replace_malloc.c:296)
==2393==    by 0x7BCD895: g_malloc (gmem.c:97)
==2393==    by 0x3BE6A7: columns_new (gtkcmclist.c:6417)
==2393==    by 0x3BE6A7: gtk_cmclist_constructor (gtkcmclist.c:1230)
==2393==    by 0x794C548: g_object_new_with_custom_constructor (gobject.c:1645)
==2393==    by 0x794C548: g_object_new_internal (gobject.c:1722)
==2393==    by 0x794E322: g_object_new_valist (gobject.c:1980)
==2393==    by 0x59024BD: gtk_widget_new (in /usr/lib/libgtk-x11-2.0.so.0.2400.23)
==2393==    by 0x3CC434: gtk_sctree_new_with_titles (gtksctree.c:980)
==2393==    by 0x26047E: folderview_ctree_create (folderview.c:432)
==2393==    by 0x2630A5: folderview_create (folderview.c:593)
==2393==    by 0x28B234: main_window_create (mainwindow.c:1990)
==2393==    by 0x21C301: main (main.c:1286)

Sounds like the calculations yield 'column' being >= clist->columns and causing the invalid read.