I just ran into a (probably rare) crash bug in Geany.
If I try to switch Document->Set Encoding from "Unicode->UTF-8" to "Without encoding" , then the next time I save the document I get a segfault. It looks like it happens when Geany tries to rebuild the tags...
Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1219221808 (LWP 30632)] 0xb75d8f91 in strcmp () from /lib/libc.so.6
(gdb) bt #0 0xb75d8f91 in strcmp () from /lib/libc.so.6 #1 0x080c5e8e in compare_symbol (a=0x84ed040, b=0x84ed030) at symbols.c:311 .... .... .... #37 0x080b2581 in main (argc=12, argv=0xbfe97994) at main.c:769
(gdb) frame 1 #1 0x080c5e8e in compare_symbol (a=0x84ed040, b=0x84ed030) at symbols.c:311 311 ret = strcmp(a->str, b->str);
(gdb) print a->str $1 = (gchar *) 0x0
(gdb) print b->str $2 = (gchar *) 0x0
As you can see, compare_symbol() calls strcmp(0x0,0x0) but I don't know enough about what's happening to know if it's OK just to check if ( a->str && b->str ) else return 0, or maybe there is a problem with the upstream code that this should never happen anyway.
It's not a big problem for me since I rarely need to change the encoding options, but I thought it should at least be noted here.
- Jeff