U++ framework
Do not panic. Ask here before giving up.

Home » U++ TheIDE » U++ TheIDE: CodeEditor, Assist++, Topic++ » Back in HelpWindow crashes the application
Back in HelpWindow crashes the application [message #23245] Sat, 03 October 2009 17:06 Go to previous message
dolik.rce is currently offline  dolik.rce
Messages: 1796
Registered: August 2008
Location: Czech Republic
Ultimate Contributor

Hi,

I've noticed, that hitting "Back" button in HelpWindow causes segfault if compiled with DEBUG flag. This is not critical bug, as long as it works in release mode, but I thought you should know Wink

I discovered this while writing help for my application, but it happens in other apps too. You can use PieTest from bazaar as a test case. Precise series of actions leading to crash PieTest is:
  1. Run the application compiled in DEBUG mode
  2. Click "?" button to open HelpWindow
  3. Click on topic Page2
  4. Click "Back" button
If I run it in debugger, last available backtrack (one more step leads to Panic() call) reads
Upp::AtomicInc (t=@0x6565723e) at /media/other/opt/uppsvn/uppsrc/Core/Mt.h:456
Upp::String0::LSet (this=0xbff70b7c, s=@0xb7f4f9d4) at /media/other/opt/uppsvn/uppsrc/Core/String.cpp:23
Upp::String0::Assign (this=0xbff70b7c, s=@0xb7f4f9d4) at /media/other/opt/uppsvn/uppsrc/Core/String.h:218
Upp::String::operator= (this=0xbff70b7c, s=@0xb7f4f9d4) at /media/other/opt/uppsvn/uppsrc/Core/String.h:301
Upp::HelpWindow::GoTo0 (this=0xbff6f9a4, link=@0xb7f4f9d4) at /media/other/opt/uppsvn/uppsrc/CtrlLib/Help.cpp:31
Upp::HelpWindow::Back (this=0xbff6f9a4) at /media/other/opt/uppsvn/uppsrc/CtrlLib/Help.cpp:64
Upp::CallbackMethodAction<Upp::HelpWindow, void (Upp::HelpWindow::*)()>::Execute (this=0xb78c6260) at /media/other/opt/uppsvn/uppsrc/Core/Cbgen.h:31
Upp::Callback::Execute (this=0xb7f49898) at /media/other/opt/uppsvn/uppsrc/Core/Callback.cpp:11
Upp::Callback::operator() (this=0xb7f49898) at /media/other/opt/uppsvn/uppsrc/Core/Cbgen.h:63
Upp::ToolButton::LeftUp (this=0xb7f49830) at /media/other/opt/uppsvn/uppsrc/CtrlLib/ToolButton.cpp:286
Upp::Ctrl::MouseEvent (this=0xb7f49830, event=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074336664, y = 0}, zdelta=0, keyflags=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:135
Upp::Ctrl::MouseEventH (this=0xb7f49830, event=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074336528, y = 0}, zdelta=0, keyflags=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:89
Upp::Ctrl::MEvent0 (this=0xb7f49830, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074336320, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:293
Upp::Ctrl::DispatchMouseEvent (this=0xb7f49830, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074336088, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:552
Upp::Ctrl::DispatchMouseEvent (this=0xbff709f4, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074335864, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:552
Upp::Ctrl::DispatchMouseEvent (this=0xbff70958, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074335640, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:552
Upp::Ctrl::DispatchMouseEvent (this=0xbff6f9a4, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074335436, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:552
Upp::Ctrl::DispatchMouse (this=0xbff6f9a4, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074334688, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:530
Upp::Ctrl::EventProc (this=0xbff6f9a4, w=@0xb78c9610, event=0xbff6f7bc) at /media/other/opt/uppsvn/uppsrc/CtrlCore/X11Proc.cpp:347
Upp::TopWindow::EventProc (this=0xbff6f9a4, w=@0xb78c9610, event=0xbff6f7bc) at /media/other/opt/uppsvn/uppsrc/CtrlCore/TopWinX11.cpp:57
Upp::Ctrl::ProcessEvent (event=0xbff6f7bc) at /media/other/opt/uppsvn/uppsrc/CtrlCore/X11Wnd.cpp:238
Upp::Ctrl::EventLoop0 (ctrl=0xbff6f9a4) at /media/other/opt/uppsvn/uppsrc/CtrlCore/X11Wnd.cpp:367
Upp::CallbackActionCallArg<void (*)(Upp::Ctrl*), Upp::Ctrl*, unsigned int>::Execute (this=0xb78c61a0) at /media/other/opt/uppsvn/uppsrc/Core/Callback.h:53
Upp::Callback::Execute (this=0xbff6f89c) at /media/other/opt/uppsvn/uppsrc/Core/Callback.cpp:11
Upp::Callback::operator() (this=0xbff6f89c) at /media/other/opt/uppsvn/uppsrc/Core/Cbgen.h:63
Upp::Ctrl::Call (cb={<Upp::Moveable<Upp::Callback, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, action = 0xbff6f89c}) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMt.cpp:118
Upp::Ctrl::EventLoop (ctrl=0xbff6f9a4) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMt.cpp:189
Upp::TopWindow::Run (this=0xbff6f9a4, appmodal=false) at /media/other/opt/uppsvn/uppsrc/CtrlCore/TopWindow.cpp:312
Upp::TopWindow::Execute (this=0xbff6f9a4) at /media/other/opt/uppsvn/uppsrc/CtrlCore/TopWindow.cpp:331
PieTest::Help (this=0xbff718d0) at /media/other/opt/uppsvn/bazaar/PieTest/main.cpp:94
Upp::CallbackMethodAction<PieTest, void (PieTest::*)()>::Execute (this=0xb7f52770) at /media/other/opt/uppsvn/uppsrc/Core/Cbgen.h:31
Upp::Callback::Execute (this=0xbff71f2c) at /media/other/opt/uppsvn/uppsrc/Core/Callback.cpp:11
Upp::Callback::operator() (this=0xbff71f2c) at /media/other/opt/uppsvn/uppsrc/Core/Cbgen.h:63
Upp::Pusher::PerformAction (this=0xbff71ec4) at /media/other/opt/uppsvn/uppsrc/CtrlLib/Button.cpp:16
Upp::Pusher::FinishPush (this=0xbff71ec4) at /media/other/opt/uppsvn/uppsrc/CtrlLib/Button.cpp:98
Upp::Pusher::LeftUp (this=0xbff71ec4) at /media/other/opt/uppsvn/uppsrc/CtrlLib/Button.cpp:56
Upp::Ctrl::MouseEvent (this=0xbff71ec4, event=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074328152, y = 0}, zdelta=0, keyflags=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:135
Upp::Ctrl::MouseEventH (this=0xbff71ec4, event=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074328016, y = 0}, zdelta=0, keyflags=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:89
Upp::Ctrl::MEvent0 (this=0xbff71ec4, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074327808, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:293
Upp::Ctrl::DispatchMouseEvent (this=0xbff71ec4, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074327576, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:552
Upp::Ctrl::DispatchMouseEvent (this=0xbff718d0, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074327372, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:552
Upp::Ctrl::DispatchMouse (this=0xbff718d0, e=145, p={<Upp::Moveable<Upp::Point_<int>, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, x = -1074326624, y = 0}, zd=0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMouse.cpp:530
Upp::Ctrl::EventProc (this=0xbff718d0, w=@0xb7f50910, event=0xbff7173c) at /media/other/opt/uppsvn/uppsrc/CtrlCore/X11Proc.cpp:347
Upp::TopWindow::EventProc (this=0xbff718d0, w=@0xb7f50910, event=0xbff7173c) at /media/other/opt/uppsvn/uppsrc/CtrlCore/TopWinX11.cpp:57
Upp::Ctrl::ProcessEvent (event=0xbff7173c) at /media/other/opt/uppsvn/uppsrc/CtrlCore/X11Wnd.cpp:238
Upp::Ctrl::EventLoop0 (ctrl=0xbff718d0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/X11Wnd.cpp:367
Upp::CallbackActionCallArg<void (*)(Upp::Ctrl*), Upp::Ctrl*, unsigned int>::Execute (this=0xb7f52620) at /media/other/opt/uppsvn/uppsrc/Core/Callback.h:53
Upp::Callback::Execute (this=0xbff7181c) at /media/other/opt/uppsvn/uppsrc/Core/Callback.cpp:11
Upp::Callback::operator() (this=0xbff7181c) at /media/other/opt/uppsvn/uppsrc/Core/Cbgen.h:63
Upp::Ctrl::Call (cb={<Upp::Moveable<Upp::Callback, Upp::EmptyClass>> = {<Upp::EmptyClass> = {<No data fields>}, <No data fields>}, action = 0xbff7181c}) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMt.cpp:118
Upp::Ctrl::EventLoop (ctrl=0xbff718d0) at /media/other/opt/uppsvn/uppsrc/CtrlCore/CtrlMt.cpp:189
Upp::TopWindow::Run (this=0xbff718d0, appmodal=false) at /media/other/opt/uppsvn/uppsrc/CtrlCore/TopWindow.cpp:312
GuiMainFn_ () at /media/other/opt/uppsvn/bazaar/PieTest/main.cpp:127
main (argc=0, argv=0x0, envptr=0x0) at /media/other/opt/uppsvn/bazaar/PieTest/main.cpp:125

I've tried with Upp releases 1585 and 1603, using g++-4.3 in Ubuntu 9.04.

Regards,
Honza
 
Read Message
Read Message
Previous Topic: I have problems with UNIX vs DOS line endings.
Next Topic: Proposal: quick search inside topic
Goto Forum:
  


Current Time: Sat Apr 25 16:02:12 GMT+2 2026

Total time taken to generate the page: 0.00681 seconds