Comment #6 on issue 25354 by [email protected]: Need a fool-proof way
of executing tasks on other threads without worrying about thread
destruction order
http://code.google.com/p/chromium/issues/detail?id=25354
The following revision refers to this bug:
http://src.chromium.org/viewvc/chrome?view=rev&revision=30303
------------------------------------------------------------------------
r30303 | [email protected] | 2009-10-27 18:12:59 -0700 (Tue, 27 Oct 2009) |
7 lines
Changed paths:
M
http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/browser_main.cc?r1=30303&r2=30302
Fix the crashes in interactive_ui_tests on Linux.
The cause is really subtle. When I added a db_thread() in BrowserMain,
that changed the order that threads were created at. Since interactive ui
tests don't run atexitmanager (I filed a bug to make them do), this
cascaded into file_posix.cc's InFlightIO singelton caching the first IO
MessageLoop pointer. By fluke, previously each IO ML would have the exact
same pointer value (must be a unique size for the allocator). My change
modified the construction order, so the second run would have a different
ChromeThread (file) get the previous IO thread's ML pointer. That led to
the asserts. I have added code to start the threads in a predictable
manner for now.
BUG=25354
TEST=interactive_ui_tests in Linux stop crashing
Review URL: http://codereview.chromium.org/340017
------------------------------------------------------------------------
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings
--~--~---------~--~----~------------~-------~--~----~
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs
-~----------~----~----~----~------~----~------~--~---