diff options
author | Thierry Vignaud <thierry.vignaud@gmail.com> | 2014-08-28 11:20:40 +0200 |
---|---|---|
committer | Thierry Vignaud <thierry.vignaud@gmail.com> | 2014-09-04 16:31:37 +0200 |
commit | 18a18468e1033311f3de3badf9d6e14cb5f67677 (patch) | |
tree | 212206986aa6930d547c04e1c99234f67545a341 /gurpmi2 | |
parent | 7c13acd9f28565aaa2e4ca1e9533e97ed008a044 (diff) | |
download | urpmi-18a18468e1033311f3de3badf9d6e14cb5f67677.tar urpmi-18a18468e1033311f3de3badf9d6e14cb5f67677.tar.gz urpmi-18a18468e1033311f3de3badf9d6e14cb5f67677.tar.bz2 urpmi-18a18468e1033311f3de3badf9d6e14cb5f67677.tar.xz urpmi-18a18468e1033311f3de3badf9d6e14cb5f67677.zip |
fix segfaulting when managing exceptions
we were loading gtk+2 in order to set my_gtk_main_level to
gtk_main_level
which resulted in us strange segfaults when eg trying to save a package:
$ gdb -q --args perl ./gurpmi ./coreutils-doc-8.23-1.mga5.noarch.rpm
(gdb) s
generic_exceptions_handler () at GClosure.xs:774
774 if ((*my_gtk_main_level)())
(gdb) print my_gtk_main_level
$1 = (guint (*)()) 0x7fffe75eebf0
(gdb) print *my_gtk_main_level
Cannot access memory at address 0x7fffe75eebf0
(gdb) s
Program received signal SIGSEGV, Segmentation fault.
0x00007fffe75eebf0 in ?? ()
(gdb) print gtk_main_level
$2 = {guint (void)} 0x7fffee90d650 <gtk_main_level>
Diffstat (limited to 'gurpmi2')
-rwxr-xr-x | gurpmi2 | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -29,7 +29,7 @@ our $test = 0; our $use_provides = 1; # For other distros w/o exception support: -eval { Glib->enable_exceptions2 }; +eval { Glib->enable_exceptions3 }; if (my $err = $@) { warn "Error: $err\n"; } |