[haiku-bugs] [Haiku] #10507: Returning B_OK from DeviceAdded() callback, causing a SIGABRT

  • From: "codewrangler" <trac@xxxxxxxxxxxx>
  • Date: Wed, 05 Feb 2014 18:14:05 -0000

#10507: Returning B_OK from DeviceAdded() callback, causing a SIGABRT
--------------------------+------------------------------
 Reporter:  codewrangler  |        Owner:  nobody
     Type:  bug           |       Status:  new
 Priority:  blocker       |    Milestone:  R1
Component:  - General     |      Version:  R1/Development
 Keywords:  USB           |   Blocked By:
 Blocking:                |  Has a Patch:  0
 Platform:  x86           |
--------------------------+------------------------------
 I get (3) DeviceAdded notifications (of Types 0,9,9), which I assume are
 the USB 'devices' already attached to the system (VMWare Fusion 6.x).
 After returning B_OK, from the last callback (same for all 3), I get a
 SIGABRT (according to gdb).

 Here is the backtrace:

 (gdb) backtrace
 #0  0x609a2114 in ?? ()
 #1  0x006624eb in send_signal () from /boot/system/lib/libroot.so
 #2  0x006624a2 in raise () from /boot/system/lib/libroot.so
 #3  0x006b5c49 in abort () from /boot/system/lib/libroot.so
 #4  0x00643140 in __default_terminate () from /boot/system/lib/libroot.so
 #5  0x0064315d in __terminate () from /boot/system/lib/libroot.so
 #6  0x00644744 in __pure_virtual () from /boot/system/lib/libroot.so
 #7  0x00e59b1d in WatchedEntry::~WatchedEntry ()
    from /boot/system/lib/libdevice.so
 #8  0x00e59af6 in WatchedEntry::~WatchedEntry ()
    from /boot/system/lib/libdevice.so
 #9  0x00e59af6 in WatchedEntry::~WatchedEntry ()
    from /boot/system/lib/libdevice.so
 #10 0x00e5a0bd in RosterLooper::Stop () from /boot/system/lib/libdevice.so
 #11 0x00e5a3df in BUSBRoster::Stop () from /boot/system/lib/libdevice.so
 #12 0x00e5a2b9 in BUSBRoster::~BUSBRoster () from
 /boot/system/lib/libdevice.so
 #13 0x012821f3 in USBHandler::~USBHandler (this=0x1837d018, __in_chrg=3)
     at /boot/home/projects/MonitorCCID/MonitorCCIDApp.cpp:121
 #14 0x01282015 in MonitorCCIDWindow::StartMonitoring (this=0x18382f80)
     at /boot/home/projects/MonitorCCID/MonitorCCIDApp.cpp:81
 #15 0x01281e6b in MonitorCCIDWindow::MonitorCCIDWindow (this=0x18382f80)
     at /boot/home/projects/MonitorCCID/MonitorCCIDApp.cpp:48
 #16 0x01281d2d in MonitorCCIDApp::ReadyToRun (this=0x72bd3444)
     at /boot/home/projects/MonitorCCID/MonitorCCIDApp.cpp:40
 ---Type <return> to continue, or q <return> to quit---
 #17 0x0103be91 in BApplication::DispatchMessage ()
    from /boot/system/lib/libbe.so
 #18 0x01046e0d in BLooper::task_looper () from /boot/system/lib/libbe.so
 #19 0x0103a9fd in BApplication::Run () from /boot/system/lib/libbe.so
 #20 0x01282137 in main ()
     at /boot/home/projects/MonitorCCID/MonitorCCIDApp.cpp:113

--
Ticket URL: <https://dev.haiku-os.org/ticket/10507>
Haiku <https://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: