Menu

#16 VDK File Open dialog is crashing

open
nobody
None
5
2014-08-21
2003-08-10
No

//I am using this fragment of code
bool Test1Form::Onbutton0Click(VDKObject* sender)
{
FileStringArray selections;
VDKFileDialog *child = new VDKFileDialog
(this,&selections, _(file_dialog_prompts[0]));
child->Filter="*.*";
child->ShowModal();
if(selections.size()>0)
Edt_WPD_File->Text=selections[0];
return true;
}

//proposed bugfix - please do something better
void VDKFileDialog::OnShow(VDKForm*)
{
VDKString filter = Filter;
if( ! filter.isNull())
{ //it is somehow vousy that
sometimes the procedure is called even when
filetype=NULL!!!!!
if(filetype) //this line fixes the bug, but there is
still sometghing unclean
{
filetype->Text = (char*) filter;
LoadDir();
}
}
return;
}

//Crash callstack
Program received signal SIGSEGV, Segmentation fault.
0x406ea1ff in strlen () from /lib/libc.so.6
(gdb) backtrace
#0 0x406ea1ff in strlen () from /lib/libc.so.6
#1 0x40081f6d in VDKEntry::SetText(char*) ()
from /usr/local/lib/libvdk.so.2
#2 0x40082547 in VDKReadWriteValueProp<VDKEntry,
char*>::operator=(char*) ()
from /usr/local/lib/libvdk.so.2
#3 0x400c2ee4 in VDKFileDialog::OnShow(VDKForm*) ()
from /usr/local/lib/libvdk.so.2
#4 0x40083723 in VDKForm::ConfigureEvent
(_GtkWidget*, _GdkEventConfigure*, void*) ()
from /usr/local/lib/libvdk.so.2
#5 0x401b1de3 in _gtk_marshal_BOOLEAN__BOXED
(closure=0x822b308, return_value=0xbfffe10c,
n_param_values=2, param_values=0xbfffe24c,
invocation_hint=0xbfffe128, marshal_data=0x0)
at gtkmarshalers.c:82
#6 0x404d0f5e in g_closure_invoke
(closure=0x822b308, return_value=0xbfffe10c,
n_param_values=2, param_values=0xbfffe24c,
invocation_hint=0xbfffe128) at gclosure.c:437
#7 0x404e4754 in signal_emit_unlocked_R
(node=0x80ea058, detail=0, instance=0x822ad88,
emission_return=0xbfffe20c,
instance_and_params=0xbfffe24c) at gsignal.c:2822
#8 0x404e3013 in g_signal_emit_valist
(instance=0x822ad88, signal_id=38, detail=0,
var_args=0xbfffe3d4) at gsignal.c:2564
#9 0x404e325c in g_signal_emit (instance=0x822ad88,
signal_id=38, detail=0) at gsignal.c:2612
#10 0x402734fd in gtk_widget_event_internal
(widget=0x822ad88, event=0x8227164)
at gtkwidget.c:3143
#11 0x40273150 in gtk_widget_event
(widget=0x822ad88, event=0x8227164) at
gtkwidget.c:3004
#12 0x401b0c21 in gtk_main_do_event
(event=0x8227164) at gtkmain.c:1525
#13 0x4034a6e9 in gdk_event_dispatch
(source=0x80e4bd0, callback=0, user_data=0x0)
at gdkevents-x11.c:2018
#14 0x40528215 in g_main_dispatch
(context=0x80e4c18) at gmain.c:1653
#15 0x40529151 in g_main_context_dispatch
(context=0x80e4c18) at gmain.c:2197
#16 0x40529305 in g_main_context_iterate
(context=0x80e4c18, block=1, dispatch=1,
self=0x8145948) at gmain.c:2278
#17 0x40529aa0 in g_main_loop_run (loop=0x829cce0)
at gmain.c:2498
#18 0x401b0251 in gtk_main () at gtkmain.c:1092
#19 0x4008639f in VDKForm::ShowModal
(GtkWindowPosition) () from /usr/local/lib/libvdk.so.2
#20 0x0805bc20 in Test1Form::Onbutton0Click
(VDKObject*) (this=0x80e5128, sender=0x811fea0)
at /C/prog/latex/vdk/test1.cc:451
#21 0x0805d47a in Test1Form::VDKSignalResponse
(_GtkWidget*, int, void*, void*, bool) (
this=0x80e5128, mobj=0x8121040, signal=0,
obj=0x811fea0, real_sender=0x811fea0,
treated=false) at /C/prog/latex/vdk/test1_gui.cc:27
#22 0x400b488c in VDKObject::VDKSignalPipe
(_GtkWidget*, void*) ()
from /usr/local/lib/libvdk.so.2
#23 0x404e5576 in g_cclosure_marshal_VOID__VOID
(closure=0x8122190, return_value=0x0,
n_param_values=1, param_values=0xbfffe9a8,
invocation_hint=0xbfffe894, marshal_data=0x0)
at gmarshal.c:77
#24 0x404d0f5e in g_closure_invoke
(closure=0x8122190, return_value=0x0,
n_param_values=1,
param_values=0xbfffe9a8,
invocation_hint=0xbfffe894) at gclosure.c:437
#25 0x404e4754 in signal_emit_unlocked_R
(node=0x811e530, detail=0, instance=0x8121040,
emission_return=0x0,
instance_and_params=0xbfffe9a8) at gsignal.c:2822
#26 0x404e2fa1 in g_signal_emit_valist
(instance=0x8121040, signal_id=107, detail=0,
var_args=0xbfffeb2c) at gsignal.c:2554
#27 0x404e325c in g_signal_emit (instance=0x8121040,
signal_id=107, detail=0)
at gsignal.c:2612
#28 0x4013ba02 in gtk_button_clicked
(button=0x8121040) at gtkbutton.c:555
#29 0x4013c6f9 in gtk_real_button_released
(button=0x8121040) at gtkbutton.c:1044
#30 0x404e5576 in g_cclosure_marshal_VOID__VOID
(closure=0x811e468, return_value=0x0,
n_param_values=1, param_values=0xbfffeed8,
invocation_hint=0xbfffedc4,

Discussion


Log in to post a comment.