Last Comment Bug 776745 - [b2g-bluetooth] Crash in bluetooth discovery due to initializer buried in NS_ASSERTION
: [b2g-bluetooth] Crash in bluetooth discovery due to initializer buried in NS_...
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: DOM: Device Interfaces (show other bugs)
: Trunk
: x86_64 Linux
: -- normal (vote)
: mozilla17
Assigned To: Kyle Machulis [:kmachulis] [:qdot]
:
Mentors:
Depends on:
Blocks: b2g-bluetooth
  Show dependency treegraph
 
Reported: 2012-07-23 16:14 PDT by Kyle Machulis [:kmachulis] [:qdot]
Modified: 2012-07-25 08:11 PDT (History)
4 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Patch 1 (v1): Fix initializer creation to not be wrapped in NS_ASSERTION (691 bytes, patch)
2012-07-23 16:16 PDT, Kyle Machulis [:kmachulis] [:qdot]
anygregor: review+
Details | Diff | Review

Description Kyle Machulis [:kmachulis] [:qdot] 2012-07-23 16:14:32 PDT
When a DeviceFound message is handled by BluetoothDBusService.cpp's EventLoop function, the dbus iterator is wrapped in an NS_ASSERTION, meaning that it won't get called at all if it's being built in release. This causes very weird crashes.
Comment 1 Kyle Machulis [:kmachulis] [:qdot] 2012-07-23 16:16:22 PDT
Created attachment 645109 [details] [diff] [review]
Patch 1 (v1): Fix initializer creation to not be wrapped in NS_ASSERTION
Comment 2 Mounir Lamouri (:mounir) 2012-07-23 16:31:04 PDT
FWIW, you can use MOZ_ASSERT_ALWAYS_TRUE for that. This is going to assert if the expression is false in debug build but will still run the expression in release builds.
Comment 3 Kyle Machulis [:kmachulis] [:qdot] 2012-07-24 13:06:03 PDT
http://hg.mozilla.org/integration/mozilla-inbound/rev/41a814f672cb
Comment 4 Ed Morley [:emorley] 2012-07-25 08:11:22 PDT
https://hg.mozilla.org/mozilla-central/rev/41a814f672cb

Note You need to log in before you can comment on or make changes to this bug.