Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 238225 - >=app-office/abiword-2.8 keyword request
Summary: >=app-office/abiword-2.8 keyword request
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo/BSD Team
URL: http://bugzilla.abiword.com/show_bug....
Whiteboard:
Keywords: KEYWORDREQ
Depends on:
Blocks: 352952
  Show dependency tree
 
Reported: 2008-09-20 20:18 UTC by Gilles Dartiguelongue (RETIRED)
Modified: 2011-03-18 16:39 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gilles Dartiguelongue (RETIRED) gentoo-dev 2008-09-20 20:18:57 UTC
2.6 series isn't yet keyworded on x86-fbsd, do you wish to handle it of dropping abiword keyword is fine for you ?
Comment 1 Alexis Ballier gentoo-dev 2008-09-24 14:40:28 UTC
well... it segfaults here:
Program received signal SIGSEGV, Segmentation fault.
0x2919ba93 in __vfprintf (fp=0xbfbfe11c, fmt0=0x0, ap=0xbfbfe204 "")
    at /var/tmp/portage/sys-freebsd/freebsd-lib-7.0/work/lib/libc/stdio/vfprintf.c:665
665	/var/tmp/portage/sys-freebsd/freebsd-lib-7.0/work/lib/libc/stdio/vfprintf.c: No such file or directory.
	in /var/tmp/portage/sys-freebsd/freebsd-lib-7.0/work/lib/libc/stdio/vfprintf.c
Current language:  auto; currently c
(gdb) bt
#0  0x2919ba93 in __vfprintf (fp=0xbfbfe11c, fmt0=0x0, ap=0xbfbfe204 "")
    at /var/tmp/portage/sys-freebsd/freebsd-lib-7.0/work/lib/libc/stdio/vfprintf.c:665
#1  0x2910387b in vasprintf (str=0xbfbfe1d4, fmt=0x0, ap=0xbfbfe204 "")
    at /var/tmp/portage/sys-freebsd/freebsd-lib-7.0/work/lib/libc/stdio/vasprintf.c:59
#2  0x28bbeb37 in IA__g_vasprintf (string=0xbfbfe1d4, format=0x0, args=0xbfbfe204 "") at gprintf.c:313
#3  0x28babf36 in IA__g_strdup_vprintf (format=0x0, args=0xbfbfe204 "") at gstrfuncs.c:218
#4  0x28babf5b in IA__g_strdup_printf (format=0x0) at gstrfuncs.c:231
#5  0x083cd872 in abi_table_resize (table=0x29902808) at xap_UnixTableWidget.cpp:126
#6  0x083cdafa in abi_table_init (table=0x29902808) at xap_UnixTableWidget.cpp:678
#7  0x28b3d67b in IA__g_type_create_instance (type=697259200) at gtype.c:1575
#8  0x28b22572 in g_object_constructor (type=697259200, n_construct_properties=3, construct_params=0x298fe060)
    at gobject.c:1046
#9  0x285e3cc4 in gtk_button_constructor (type=697259200, n_construct_properties=3, construct_params=0x298fe060)
    at gtkbutton.c:542
#10 0x28b22d20 in IA__g_object_newv (object_type=697259200, n_parameters=0, parameters=0x0) at gobject.c:937
#11 0x28b23863 in IA__g_object_new_valist (object_type=697259200, first_property_name=0x0, 
    var_args=0xbfbfe608 "�\237\t)XT\216);") at gobject.c:986
#12 0x28b239d0 in IA__g_object_new (object_type=697259200, first_property_name=0x0) at gobject.c:795
#13 0x083ccd43 in abi_table_new () at xap_UnixTableWidget.cpp:762
#14 0x08295df5 in EV_UnixToolbar::synthesize (this=0x298b5bc0) at ev_UnixToolbar.cpp:841
#15 0x0824d63e in XAP_FrameImpl::_createToolbars (this=0x29789280) at xap_Frame.cpp:661
#16 0x08260528 in XAP_UnixFrameImpl::_createTopLevelWindow (this=0x29789280) at xap_UnixFrameImpl.cpp:1590
#17 0x08156c92 in AP_UnixFrameImpl::_createWindow (this=0x29789280) at ap_UnixFrameImpl.cpp:346
#18 0x0815552a in AP_UnixFrame::initialize (this=0x297861a0, frameMode=XAP_NormalFrame) at ap_UnixFrame.cpp:247
#19 0x08152066 in AP_UnixApp::newFrame (this=0x29709800) at ap_UnixApp.cpp:418
#20 0x081595f2 in AP_App::openCmdLineFiles (this=0x29709800, args=0xbfbfe83c) at ap_App.cpp:103
#21 0x08152a73 in AP_UnixApp::main (szAppName=0x841b013 "abiword", argc=1, argv=0xbfbfe8b8)
    at ap_UnixApp.cpp:1309
#22 0x0815121a in main (argc=692153024, argv=0xbfe188) at UnixMain.cpp:30



some further investigation lead to a call to g_strdup_printf(NULL) due to this portion of code in abiword:
src/af/xap/unix/xap_UnixTableWidget.cpp

in abi_table_init:

table->szCancel = NULL;
...
abi_table_resize(table);

then in abi_table_resize:
if (table->selected_rows == 0 && table->selected_cols == 0)
                text = g_strdup_printf(table->szCancel);


some tests with that program on both linux and freebsd:
#include <stdio.h>
int main(){
        printf(NULL);
        return 0;
}

leads to nothing happening on linux and a segfault on freebsd.

glib version is 2.16.6. I'm not sure if either glib should handle this or abiword not call g_strdup_printf(NULL); and you will probably know better than me about this. I've tried to read some doc about printf standards but haven't found anything about printf(NULL) :/

I've tried replacing the offending line by:
text = (table->szCancel ? g_strdup_printf(table->szCancel) : NULL);
as found here:
http://git.xbsd.org/freebsd/ports/tree/editors/abiword/files/patch-src_af_xap_unix_xap_UnixTableWidget.cpp?h=9727fdf1fe631fb7f6adb4b308b3a7c01552fc59&id=e786cf2f8311f1e1f21db41dce25b1cd91ef3d86

and then it segfaults later on some pango things.


As for -plugins, it's not keyworded yet and has lots of missing deps, so I suppose I'll keyword it if someone asks for it.
Comment 2 Gilles Dartiguelongue (RETIRED) gentoo-dev 2008-09-24 15:59:29 UTC
wow, that's a nice way to segfault :)
well imho, it's either freeb printf or glib that needs fixing, I'll try to submit this issue to glib devs and see what they say. Thanks for testing so far.
Comment 3 Xake 2010-03-13 17:14:56 UTC
According to upstream bug this is fixed. Is this the case for gentoo as well, or do we need a patch or two?
Comment 4 Gilles Dartiguelongue (RETIRED) gentoo-dev 2010-04-19 23:30:17 UTC
updating summary. Please give a shot at this new release.
Comment 5 Pacho Ramos gentoo-dev 2010-12-04 01:03:25 UTC
BSD team, please check if you are able to keyword recent abiword releases since this is causing us to need to still provide old abiword/goffice stuff

Thanks
Comment 6 Pacho Ramos gentoo-dev 2011-03-18 16:39:18 UTC
As talked with The Paya, bsd won't keyword gnome packages for now and is ok with dropping keywords when needed