[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [paragui-users] Puzzled newbie question
From: |
Guillaume Schmid |
Subject: |
Re: [paragui-users] Puzzled newbie question |
Date: |
29 Apr 2002 09:23:36 +0200 |
Le dim 28/04/2002 à 23:17, Alexander Pipelka a écrit :
> Hi Guillaume
>
> You're right. That's really a problem.
> The right procedure would be to call eventSelectItem() *after* updating
> the listboxitem.
>
> I fixed this for version 1.0.2 which will be released soon.
> If you can't (or don't want to) wait for the official release please
> checkout the sources from the cvs repository:
>
> cvs -d:pserver:address@hidden:/cvsroot/paragui login
> pw: none (just hit enter)
>
> cvs -z3 -d:pserver:address@hidden:/cvsroot/paragui co -r
> devel-1-0 paragui
>
> Thanks for the hint.
Well, it does still Segfault.
>From what i anderstand from the sources and the stack trace (not that
mutch, I'm affraid, for the moment :), it is the same problem as the
update thing, but with some mutex. I guess that a mutex is acquired by a
widget witch is destroyed when I update the content of the listbox. Then
afted event handling, the mutex should be released but the widget does
not exist anymore, so is the pointer to the mutex (am I right ?).
I am sorry to bother you with this, I wish I could solve it myself and
provide a patch but this library is rather big and dont anderstand it
fully yet.
here is a gdb output:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 25518)]
0x402659f6 in PG_MessageObject::ProcessEvent (this=0x4109cf3c,
event=0xbffff6d0) at pgmessageobject.cpp:172
warning: Source file is more recent than executable.
172 SDL_mutexV(my_mutexReceiveMessage);
(gdb) p this
$1 = (PG_MessageObject *) 0x4109cf3c
(gdb) p *this
$2 = {static my_quitEventLoop = false,
static objectList = {<_Vector_base<PG_MessageObject
*,allocator<PG_MessageObject *> >> =
{<_Vector_alloc_base<PG_MessageObject *,allocator<PG_MessageObject
*>,true>> = {_M_start = 0x41140f00, _M_finish = 0x41140f28,
_M_end_of_storage = 0x41141000}, <No data fields>}, <No data
fields>},
static captureObject = 0x0, my_mutexSendMessage = 0x0,
my_mutexReceiveMessage = 0x0, static inputFocusObject = 0x0,
static lastwidget = 0x0, my_oldCapture = 0x0, my_oldFocus = 0x0,
my_canReceiveMessages = true, _vptr.PG_MessageObject = 0x402b24a0}
(gdb) up
#1 0x40282d74 in PG_Widget::ProcessEvent (this=0x4109cf3c,
event=0xbffff6d0,
bModal=false) at pgwidget.cpp:544
warning: Source file is more recent than executable.
544 if(PG_MessageObject::ProcessEvent(event)) {
(gdb) p event
$3 = (SDL_Event *) 0xbffff6d0
(gdb) l
539 }
540 }
541
542 // let me see if i can process it myself
543
544 if(PG_MessageObject::ProcessEvent(event)) {
545 SDL_mutexV(my_internaldata->mutexProcess);
546 return true;
547 }
548
Ooops, I almost forgot the mandatory stack trace...
(gdb) where
#0 0x402659f6 in PG_MessageObject::ProcessEvent (this=0x4109cf3c,
event=0xbffff6d0) at pgmessageobject.cpp:172
#1 0x40282d74 in PG_Widget::ProcessEvent (this=0x4109cf3c,
event=0xbffff6d0,
bModal=false) at pgwidget.cpp:544
#2 0x40265d42 in PG_MessageObject::PumpIntoEventQueue
(event=0xbffff6d0)
at pgmessageobject.cpp:355
#3 0x40259851 in PG_Application::RunEventLoop (data=0xbffff780)
at pgapplication.cpp:197
#4 0x40259769 in PG_Application::Run (this=0xbffff780, threaded=false)
at pgapplication.cpp:166
#5 0x0804b022 in main (argc=1, argv=0xbffff834) at viewcam.cc:36
#6 0x403a0280 in __libc_start_main () from /lib/libc.so.6
- [paragui-users] Puzzled newbie question, Guillaume Schmid, 2002/04/28
- Re: [paragui-users] Puzzled newbie question, Alexander Pipelka, 2002/04/28
- Re: [paragui-users] Puzzled newbie question, Guillaume Schmid, 2002/04/28
- Re: [paragui-users] Puzzled newbie question,
Guillaume Schmid <=
- Re: [paragui-users] Puzzled newbie question, Alexander Pipelka, 2002/04/29
- Re: [paragui-users] Puzzled newbie question, Andrew Agno, 2002/04/29
- Re: [paragui-users] Puzzled newbie question, Andrew Ford, 2002/04/29
- Re: [paragui-users] Puzzled newbie question, Guillaume Schmid, 2002/04/29
- Re: [paragui-users] Puzzled newbie question, Guillaume Schmid, 2002/04/29
- Re: [paragui-users] Puzzled newbie question, Alexander Pipelka, 2002/04/29
- Re: [paragui-users] Puzzled newbie question, Guillaume Schmid, 2002/04/29
- Re: [paragui-users] Puzzled newbie question, Alexander Pipelka, 2002/04/29
- [paragui-users] listbox problem (was Puzzled newbie question), Alexander Pipelka, 2002/04/30
- Re: [paragui-users] listbox problem (was Puzzled newbie question), Guillaume Schmid, 2002/04/30