Web lists-archives.com

Re: SIGSEGV in g_utf8_collate on Windows




On 20.06.2016 15:56, Sebastian Faubel wrote:
> Hello Everybody,
> 
> in the upcoming Inkscape 0.92 release, the project has decided to switch
> from the current autotools build system to CMake. Because there is a
> large
> user base on the Windows platform, I am currently trying to get the
> program
> to compile and be ready for packaging.
> 
> I am currently struggling with an issue that causes the program to raise
> a
> SIGSEGV as soon as it tries to load locale (.po/.mo) files - and I
> honestly
> ran out of ideas. May be someone with more experience with i18n and Gtk
> can
> help me with this issue. Here's the gdb output:
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffa676ec530 in strcmp () from C:\WINDOWS\system32\msvcrt.dll
> (gdb) bt
> #0  0x00007ffa676ec530 in strcmp () from C:\WINDOWS\system32\msvcrt.dll
> #1  0x0000000068654fd9 in g_utf8_collate (str1=<optimized out>,
> str2=<optimized out>) at gunicollate.c:149
> #2  0x0000000001136cc0 in Glib::operator== (lhs=..., rhs=...) at
> c:/devlibs64/include/glibmm-2.4/glibmm/ustring.h:1522

Does anything change if you change the .po/.mo files?
Looking at the code, i see that glib calls g_utf8_normalize() on two
arguments that g_utf8_collate() is given, and does not check the return
values to not to be NULL. They could be NULL if input strings are not
UTF-8. Therefore, fudging the input strings might affect the program's
behaviour.

Obviously, the best way is to have a version of glib compiled with debug
symbols and maybe with -Og, and just debug the problem in gdb.

-- 
O< ascii ribbon - stop html email! - www.asciiribbon.org

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
gtk-list mailing list
gtk-list@xxxxxxxxx
https://mail.gnome.org/mailman/listinfo/gtk-list