> From: [EMAIL PROTECTED] [mailto:wengophone-
> [EMAIL PROTECTED] On Behalf Of Pirmin Walthert
> Sent: 15 March 2007 19:02
> To: [EMAIL PROTECTED]
> Cc: [email protected]
> Subject: [Wengophone-devel] Closing of bug Ticket #1416
>
>
> > Hello Lukas,
> >
> > While I agree that this crash is a problem, I don't think the way it's
> > fixed is a good idea: catching the boost::thread_resource_error
> > exception won't protect us for long... the application is very likely to
> > crash soon after and it will probably be even more difficult to track
> > the cause.
> >
> > Whether the ticket should have been closed is debatable... I will try to
> > spend some time today to reproduce it.
> >
> > Aurélien
> >
>
> Hello Aurélien
>
> While I agree that this fix isn't the way this issue should be fixed
> (although the submission of this patch to the mailinglist was done by
> me) it's simply not true, that the application crashes soon after this!
> I know this because I'd run the application once before the
> contactlist-repainting patch was applied for two days and this error was
> catched more than 6 times (I did some logging here) during this two
> days! In fact the application wasn't crashing but would had crashed 6
> times without the exception-handling (at the end I've closed the app
> myself)...
>
Here's a crash trace, with Aurelien's fix (fewer redraws) and Pirmin's catch
try. Seems the bug happens anyway:
msvcp80.dll!std::basic_string<char,std::char_traits<char>,std::allocator<cha
r> >::size() Line 1642 C++
> QtCore4.dll!QString::fromStdString(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
s={...}) Line 806 + 0x11 bytes C++
qtwengophone.exe!QtContact::getId() Line 99 + 0x17 bytes C++
qtwengophone.exe!QtContactManager::moveContact(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
dstGroupId=<Bad Ptr>, const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
srcGroupId=<Bad Ptr>, const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
contactId=<Bad Ptr>) Line 654 + 0x28 bytes C++
qtwengophone.exe!QtContactList::contactMovedEvent(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
dstGroupId=<Bad Ptr>, const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
srcGroupId=<Bad Ptr>, const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
contactId=<Bad Ptr>) Line 213 C++
qtwengophone.exe!CContactList::contactMovedEventHandlerThreadSafe(std::basic
_string<char,std::char_traits<char>,std::allocator<char> > dstGroupId=<Bad
Ptr>, std::basic_string<char,std::char_traits<char>,std::allocator<char> >
srcGroupId=<Bad Ptr>,
std::basic_string<char,std::char_traits<char>,std::allocator<char> >
contactId=<Bad Ptr>) Line 105 C++
qtwengophone.exe!boost::_mfi::mf3<void,CContactList,std::basic_string<char,s
td::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
>::operator()(CContactList * p=0x0ab1fe5c,
std::basic_string<char,std::char_traits<char>,std::allocator<char> > a1=<Bad
Ptr>, std::basic_string<char,std::char_traits<char>,std::allocator<char> >
a2=<Bad Ptr>,
std::basic_string<char,std::char_traits<char>,std::allocator<char> > a3=<Bad
Ptr>) Line 353 + 0x65 bytes C++
qtwengophone.exe!boost::_bi::list4<boost::_bi::value<CContactList
*>,boost::arg<1>,boost::arg<2>,boost::arg<3>
>::operator()<boost::_mfi::mf3<void,CContactList,std::basic_string<char,std:
:char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
>,boost::_bi::list3<std::basic_string<char,std::char_traits<char>,std::alloc
ator<char> >
&,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &>
>(boost::_bi::type<void> __formal={...},
boost::_mfi::mf3<void,CContactList,std::basic_string<char,std::char_traits<c
har>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > &
f={...},
boost::_bi::list3<std::basic_string<char,std::char_traits<char>,std::allocat
or<char> >
&,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
&,std::basic_string<char,std::char_traits<char>,std::allocator<char> > &> &
a={...}, boost::_bi::type<void> __formal={...}) Line 413 C++
qtwengophone.exe!boost::detail::function::void_function_obj_invoker3<boost::
_bi::bind_t<void,boost::_mfi::mf3<void,CContactList,std::basic_string<char,s
td::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
>,boost::_bi::list4<boost::_bi::value<CContactList
*>,boost::arg<1>,boost::arg<2>,boost::arg<3> >
>,void,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
>::invoke(boost::detail::function::any_pointer function_obj_ptr={...},
std::basic_string<char,std::char_traits<char>,std::allocator<char> > a0=<Bad
Ptr>, std::basic_string<char,std::char_traits<char>,std::allocator<char> >
a1=<Bad Ptr>,
std::basic_string<char,std::char_traits<char>,std::allocator<char> > a2=<Bad
Ptr>) Line 137 C++
qtwengophone.exe!boost::function3<void,std::basic_string<char,std::char_trai
ts<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::allocator<void>
>::operator()(std::basic_string<char,std::char_traits<char>,std::allocator<c
har> > a0=<Bad Ptr>,
std::basic_string<char,std::char_traits<char>,std::allocator<char> > a1=<Bad
Ptr>, std::basic_string<char,std::char_traits<char>,std::allocator<char> >
a2=<Bad Ptr>) Line 576 + 0x66 bytes C++
qtwengophone.exe!ThreadEvent3<void
__cdecl(std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>),std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
>::callback() Line 161 C++
qtwengophone.exe!ThreadEventFilter::eventFilter(QObject *
watched=0x039c1628, QEvent * event=0x105c5740) Line 34 C++
QtGui4.dll!QApplicationPrivate::notify_helper(QObject *
receiver=0x039c1628, QEvent * e=0x105c5740) Line 3111 + 0xd bytes C++
QtGui4.dll!QApplication::notify(QObject * receiver=0x039c1628,
QEvent * e=0x005c5740) Line 2776 + 0x10 bytes C++
QtCore4.dll!QCoreApplication::sendEvent(QObject *
receiver=0x039c1628, QEvent * event=0x105c5740) Line 171 + 0x22 bytes C++
QtCore4.dll!QCoreApplication::sendPostedEvents(QObject *
receiver=0x00000000, int event_type=0x00000000) Line 975 C++
QtCore4.dll!QEventDispatcherWin32::processEvents(QFlags<enum
QEventLoop::ProcessEventsFlag> flags={...}) Line 386 + 0x16 bytes C++
QtGui4.dll!QGuiEventDispatcherWin32::processEvents(QFlags<enum
QEventLoop::ProcessEventsFlag> flags={...}) Line 958 + 0xf bytes C++
QtCore4.dll!QEventLoop::processEvents(QFlags<enum
QEventLoop::ProcessEventsFlag> flags={...}) Line 125 C++
QtCore4.dll!QEventLoop::exec(QFlags<enum
QEventLoop::ProcessEventsFlag> flags={...}) Line 164 + 0xc bytes C++
QtCore4.dll!QCoreApplication::exec() Line 662 + 0x17 bytes C++
qtwengophone.exe!main(int argc=0x00000001, char * * argv=0x023155d0)
Line 191 C++
qtwengophone.exe!__tmainCRTStartup() Line 597 + 0x17 bytes C
kernel32.dll!7c816fd7()
[Frames below may be incorrect and/or missing, no symbols loaded for
kernel32.dll]
_______________________________________________
Wengophone-devel mailing list
[email protected]
http://dev.openwengo.com/mailman/listinfo/wengophone-devel