|
|
DescriptionFix an interactive ui test
* Remove touch drag for a series of tests about tab dragging to the second display as, up to now, there's no use case.
* Each display has its own UI controller in the test, but, in ozone build, they do not share the state of mouse (down, up). When the mouse is moved to the second display, the UI controller for it does know that the mouse is down in first display. That's why the tab cannot be dragged to the second display only in ozone build. Simple solution is to move the mouse state variable outside of UI controller class.
BUG=626769
Review-Url: https://codereview.chromium.org/2836073003
Cr-Commit-Position: refs/heads/master@{#468048}
Committed: https://chromium.googlesource.com/chromium/src/+/171e2ebecd1cda288825631299b898d65b80f52e
Patch Set 1 #
Total comments: 2
Patch Set 2 : Wrap the line at 80 columns #Patch Set 3 : Remove touch drag from the test #
Total comments: 2
Patch Set 4 : Please ignore this bad patch #Patch Set 5 : Please ignore this bad patch #Patch Set 6 : Leave window event dispatcher untouched #
Total comments: 2
Patch Set 7 : Rename to g_button_down_mask #
Messages
Total messages: 35 (17 generated)
The CQ bit was checked by weidongg@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
weidongg@chromium.org changed reviewers: + pkasting@chromium.org, sadrul@chromium.org
pkasting@chromium.org: Please review changes in chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc sadrul@chromium.org: Please review changes in ui/aura/test/ui_controls_factory_ozone.cc ui/aura/window_event_dispatcher.cc
LGTM https://codereview.chromium.org/2836073003/diff/1/chrome/browser/ui/views/tab... File chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc (right): https://codereview.chromium.org/2836073003/diff/1/chrome/browser/ui/views/tab... chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc:1825: // mouse drag and touch drag. Nit: Make sure to wrap at 80 columns (not earlier)
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2836073003/diff/1/chrome/browser/ui/views/tab... File chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc (right): https://codereview.chromium.org/2836073003/diff/1/chrome/browser/ui/views/tab... chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc:1825: // mouse drag and touch drag. On 2017/04/24 22:04:16, Peter Kasting wrote: > Nit: Make sure to wrap at 80 columns (not earlier) Done.
The CQ bit was checked by weidongg@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
> 2. Tab can now be dragged to second display with touch > drag, while only mouse drag works before. On what kind of device can a user do this?
On 2017/04/26 02:42:01, sadrul wrote: > > 2. Tab can now be dragged to second display with touch > > drag, while only mouse drag works before. > > On what kind of device can a user do this? I think it is not operable in real product, but we can configure the desktop to treat mouse events as touch events to do this.
On 2017/04/26 02:56:58, weidongg wrote: > On 2017/04/26 02:42:01, sadrul wrote: > > > 2. Tab can now be dragged to second display with touch > > > drag, while only mouse drag works before. > > > > On what kind of device can a user do this? > > > I think it is not operable in real product, but we can configure > the desktop to treat mouse events as touch events to do this. If we want to support that case, then this is likely not the right fix. We probably want to redirect the stream of events to the new location. That's why, as I mentioned in the email thread a couple of weeks back, this should really be a DCHECK (the change in WindowEventDispatcher, I mean). If/when we actually do have a need to support this behaviour, we should support it correctly.
> If we want to support that case, then this is likely not the right fix. We > probably want to redirect the stream of events to the new location. That's why, > as I mentioned in the email thread a couple of weeks back, this should really be > a DCHECK (the change in WindowEventDispatcher, I mean). If/when we actually do > have a need to support this behaviour, we should support it correctly. Do you mean I should not abort the processing of rest of the gesture events? Instead, I should do it the other way in the email thread: https://paste.googleplex.com/6752641216413696 to use the right dispatcher to dispatch the events.
On 2017/04/26 03:22:25, weidongg wrote: > > If we want to support that case, then this is likely not the right fix. We > > probably want to redirect the stream of events to the new location. That's > why, > > as I mentioned in the email thread a couple of weeks back, this should really > be > > a DCHECK (the change in WindowEventDispatcher, I mean). If/when we actually do > > have a need to support this behaviour, we should support it correctly. > > Do you mean I should not abort the processing of rest of the gesture events? > Instead, I should do it the other way in the email thread: > https://paste.googleplex.com/6752641216413696 > to use the right dispatcher to dispatch the events. Perhaps. But, again, until we actually have a need for this, I would rather update the test to not have this case.
On 2017/04/26 04:06:02, sadrul wrote: > On 2017/04/26 03:22:25, weidongg wrote: > > > If we want to support that case, then this is likely not the right fix. We > > > probably want to redirect the stream of events to the new location. That's > > why, > > > as I mentioned in the email thread a couple of weeks back, this should > really > > be > > > a DCHECK (the change in WindowEventDispatcher, I mean). If/when we actually > do > > > have a need to support this behaviour, we should support it correctly. > > > > Do you mean I should not abort the processing of rest of the gesture events? > > Instead, I should do it the other way in the email thread: > > https://paste.googleplex.com/6752641216413696 > > to use the right dispatcher to dispatch the events. > > Perhaps. But, again, until we actually have a need for this, I would rather > update the test to not have this case. Ok, thx, Let me try to remove this case.
Uploaded a new patch: 1. remove touch drag from the series of tests draging tab to the second display as there's no use case in real product right now. 2. reroute the event to right dispatcher when the event target is moved to another WindowTreeHost.
https://codereview.chromium.org/2836073003/diff/40001/ui/aura/window_event_di... File ui/aura/window_event_dispatcher.cc (right): https://codereview.chromium.org/2836073003/diff/40001/ui/aura/window_event_di... ui/aura/window_event_dispatcher.cc:321: dispatcher = target->GetHost()->dispatcher(); We should no longer need this change. If you want to make a change here, please add a DCHECK(window()->Contains(target)) instead.
https://codereview.chromium.org/2836073003/diff/40001/ui/aura/window_event_di... File ui/aura/window_event_dispatcher.cc (right): https://codereview.chromium.org/2836073003/diff/40001/ui/aura/window_event_di... ui/aura/window_event_dispatcher.cc:321: dispatcher = target->GetHost()->dispatcher(); On 2017/04/27 02:33:31, sadrul wrote: > We should no longer need this change. If you want to make a change here, please > add a DCHECK(window()->Contains(target)) instead. Sure, I could leave this file untouched, as WindowEventDispatcher::PreDispatchEvent already does the check.
lgtm https://codereview.chromium.org/2836073003/diff/100001/ui/aura/test/ui_contro... File ui/aura/test/ui_controls_factory_ozone.cc (right): https://codereview.chromium.org/2836073003/diff/100001/ui/aura/test/ui_contro... ui/aura/test/ui_controls_factory_ozone.cc:25: unsigned button_down_mask_ = 0; Just |button_down_mask| (or maybe |g_button_down_mask|)
The CQ bit was checked by weidongg@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from pkasting@chromium.org Link to the patchset: https://codereview.chromium.org/2836073003/#ps100001 (title: "Leave window event dispatcher untouched")
The CQ bit was unchecked by weidongg@chromium.org
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Thanks for the review. https://codereview.chromium.org/2836073003/diff/100001/ui/aura/test/ui_contro... File ui/aura/test/ui_controls_factory_ozone.cc (right): https://codereview.chromium.org/2836073003/diff/100001/ui/aura/test/ui_contro... ui/aura/test/ui_controls_factory_ozone.cc:25: unsigned button_down_mask_ = 0; On 2017/04/28 14:27:18, sadrul wrote: > Just |button_down_mask| (or maybe |g_button_down_mask|) Done.
Description was changed from ========== Fix an interactive ui test Three issues contributed to the test failure: 1. WindowEventDispatcher doesn't abort and continues processing gestures after the target of event has been moved out of WindowTreeHost, because of which CHECK for whether the first display contains the tab fails. 2. Tab can now be dragged to second display with touch drag, while only mouse drag works before. 3. Each display has its own UI controller, but, in ozone build, they do not share the state of mouse (down, up). When the mouse is moved to the second display, the UI controller for it does know that the mouse is down in first display. That's why the test has different behavior in ozone build. BUG=626769 ========== to ========== Fix an interactive ui test * Remove touch drag for a series of tests about tab dragging to the second display as, up to now, there's no use case. * Each display has its own UI controller in the test, but, in ozone build, they do not share the state of mouse (down, up). When the mouse is moved to the second display, the UI controller for it does know that the mouse is down in first display. That's why the tab cannot be dragged to the second display only in ozone build. Simple solution is to move the mouse state variable outside of UI controller class. BUG=626769 ==========
The CQ bit was checked by weidongg@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from pkasting@chromium.org, sadrul@chromium.org Link to the patchset: https://codereview.chromium.org/2836073003/#ps120001 (title: "Rename to g_button_down_mask")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 120001, "attempt_start_ts": 1493398765920980, "parent_rev": "85666c1b6dcabdfde93795a415fcff02d943a80d", "commit_rev": "171e2ebecd1cda288825631299b898d65b80f52e"}
Message was sent while issue was closed.
Description was changed from ========== Fix an interactive ui test * Remove touch drag for a series of tests about tab dragging to the second display as, up to now, there's no use case. * Each display has its own UI controller in the test, but, in ozone build, they do not share the state of mouse (down, up). When the mouse is moved to the second display, the UI controller for it does know that the mouse is down in first display. That's why the tab cannot be dragged to the second display only in ozone build. Simple solution is to move the mouse state variable outside of UI controller class. BUG=626769 ========== to ========== Fix an interactive ui test * Remove touch drag for a series of tests about tab dragging to the second display as, up to now, there's no use case. * Each display has its own UI controller in the test, but, in ozone build, they do not share the state of mouse (down, up). When the mouse is moved to the second display, the UI controller for it does know that the mouse is down in first display. That's why the tab cannot be dragged to the second display only in ozone build. Simple solution is to move the mouse state variable outside of UI controller class. BUG=626769 Review-Url: https://codereview.chromium.org/2836073003 Cr-Commit-Position: refs/heads/master@{#468048} Committed: https://chromium.googlesource.com/chromium/src/+/171e2ebecd1cda288825631299b8... ==========
Message was sent while issue was closed.
Committed patchset #7 (id:120001) as https://chromium.googlesource.com/chromium/src/+/171e2ebecd1cda288825631299b8...
Message was sent while issue was closed.
A revert of this CL (patchset #7 id:120001) has been created in https://codereview.chromium.org/2851333002/ by sky@chromium.org. The reason for reverting is: Reverting as this seems to be causing flake on the msan bot. See https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.memory%2FLinux_... for example: [ RUN ] TabDragging/DetachToBrowserInSeparateDisplayTabDragControllerTest.DragSingleTabToSeparateWindowInSecondDisplay/0 [9966:9966:0428/135949.114391:WARNING:chrome_browser_main_chromeos.cc(408)] Running as stub user with profile dir: test-user [9966:9966:0428/135949.955645:WARNING:audio_manager.cc(293)] Multiple instances of AudioManager detected [9966:9966:0428/135949.955736:WARNING:audio_manager.cc(254)] Multiple instances of AudioManager detected Xlib: extension "RANDR" missing on display ":99". Xlib: extension "RANDR" missing on display ":99". libva info: VA-API version 0.35.0 libva info: va_getDriverName() returns -1 libva error: va_getDriverName() failed with unknown libva error,driver_name=(null) [9997:9997:0428/135950.268268:WARNING:vaapi_wrapper.cc(1220)] vaInitialize failed: unknown libva error [9966:9987:0428/135950.394495:WARNING:freezer_cgroup_process_manager.cc(61)] Cgroup freezer does not exist or is not writable. Unable to freeze renderer processes. ==9966==WARNING: MemorySanitizer: use-of-uninitialized-value #0 0xb8902c5 in SkPaint::nothingToDraw() const third_party/skia/src/core/SkPaint.cpp:2328:17 #1 0x1e298854 in skia::AnalysisCanvas::onDrawRect(SkRect const&, SkPaint const&) skia/ext/analysis_canvas.cc:121:13 #2 0xc152180 in operator()<SkRecords::DrawRect> third_party/skia/src/core/SkRecordDraw.h:62:15 #3 0xc152180 in SkMiniPicture<SkRecords::DrawRect>::playback(SkCanvas*, SkPicture::AbortCallback*) const third_party/skia/src/core/SkMiniRecorder.cpp:55:0 #4 0xe99b5ad in cc::(anonymous namespace)::RasterItem(cc::DisplayItem const&, SkCanvas*, SkPicture::AbortCallback*) cc/paint/display_item_list.cc:105:21 #5 0xe99a627 in cc::DisplayItemList::Raster(SkCanvas*, SkPicture::AbortCallback*) const cc/paint/display_item_list.cc:188:5 #6 0xe99a025 in cc::DisplayItemList::Raster(SkCanvas*, SkPicture::AbortCallback*, gfx::Rect const&, float) const cc/paint/display_item_list.cc:175:3 #7 0x1044dd06 in cc::RecordingSource::DetermineIfSolidColor() cc/layers/recording_source.cc:152:18 #8 0x1044d4bb in cc::RecordingSource::FinishDisplayItemListUpdate() cc/layers/recording_source.cc:56:3 #9 0x1ee06f0f in cc::PictureLayer::Update() cc/layers/picture_layer.cc:130:24 #10 0x102e1014 in PaintContent cc/trees/layer_tree_host.cc:1066:33 #11 0x102e1014 in cc::LayerTreeHost::DoUpdateLayers(cc::Layer*) cc/trees/layer_tree_host.cc:716:0 #12 0x102df467 in cc::LayerTreeHost::UpdateLayers() cc/trees/layer_tree_host.cc:591:17 #13 0x103e12c9 in DoPainting cc/trees/single_thread_proxy.cc:705:21 #14 0x103e12c9 in cc::SingleThreadProxy::BeginMainFrame(cc::BeginFrameArgs const&) cc/trees/single_thread_proxy.cc:685:0 #15 0xd4f1335 in Run base/callback.h:91:12 #16 0xd4f1335 in base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:59:0 #17 0xd25eb93 in base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:423:19 #18 0xd260561 in base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:434:5 #19 0xd26210e in base::MessageLoop::DoWork() base/message_loop/message_loop.cc:527:13 #20 0xd271a59 in HandleDispatch base/message_loop/message_pump_glib.cc:267:25 #21 0xd271a59 in base::(anonymous namespace)::WorkSourceDispatch(_GSource*, int (*)(void*), void*) base/message_loop/message_pump_glib.cc:109:0 #22 0x7f475b7653ce in g_main_dispatch /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3064:27 #23 0x7f475b7653ce in g_main_context_dispatch /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3663:0 #24 0x7f475b766686 in g_main_context_iterate /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3734:5 #25 0x7f475b766a1d in g_main_context_iteration /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3795:12 #26 0xd270fb3 in base::MessagePumpGlib::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_glib.cc:309:30 #27 0xd25dc2b in base::MessageLoop::RunHandler() base/message_loop/message_loop.cc:387:10 #28 0xd31d81c in base::RunLoop::Run() base/run_loop.cc:37:10 #29 0x1479f62d in ash::ToplevelWindowEventHandler::RunMoveLoop(aura::Window*, gfx::Vector2d const&, aura::client::WindowMoveSource) ash/wm/toplevel_window_event_handler.cc:99:12 #30 0xcaa4ced in views::NativeWidgetAura::RunMoveLoop(gfx::Vector2d const&, views::Widget::MoveLoopSource, views::Widget::MoveLoopEscapeBehavior) ui/views/widget/native_widget_aura.cc:707:20 #31 0x15221a1d in TabDragController::RunMoveLoop(gfx::Vector2d const&) chrome/browser/ui/views/tabs/tab_drag_controller.cc:1076:26 #32 0x1522a3f5 in TabDragController::DetachIntoNewBrowserAndRunMoveLoop(gfx::Point const&) chrome/browser/ui/views/tabs/tab_drag_controller.cc:1045:3 #33 0x1522693c in TabDragController::DragBrowserToNewTabStrip(TabStrip*, gfx::Point const&) chrome/browser/ui/views/tabs/tab_drag_controller.cc:565:5 #34 0x1522279d in TabDragController::ContinueDragging(gfx::Point const&) chrome/browser/ui/views/tabs/tab_drag_controller.cc:530:9 #35 0x1521a39f in TabDragController::Drag(gfx::Point const&) chrome/browser/ui/views/tabs/tab_drag_controller.cc:387:7 #36 0x15253741 in ContinueDrag chrome/browser/ui/views/tabs/tab_strip.cc:1221:23 #37 0x15253741 in non-virtual thunk to TabStrip::ContinueDrag(views::View*, ui::LocatedEvent const&) chrome/browser/ui/views/tabs/tab_strip.cc:0:0 #38 0x1520bb4b in OnMouseDragged chrome/browser/ui/views/tabs/tab.cc:893:16 #39 0x1520bb4b in non-virtual thunk to Tab::OnMouseDragged(ui::MouseEvent const&) chrome/browser/ui/views/tabs/tab.cc:0:0 #40 0xca25f95 in views::View::ProcessMouseDragged(ui::MouseEvent const&) ui/views/view.cc:2463:9 #41 0xca247a4 in views::View::OnMouseEvent(ui::MouseEvent*) ui/views/view.cc:1076:11 #42 0xebbd783 in DispatchEvent ui/events/event_dispatcher.cc:191:12 #43 0xebbd783 in ui::EventDispatcher::ProcessEvent(ui::EventTarget*, ui::Event*) ui/events/event_dispatcher.cc:139:0 #44 0xebbcbf8 in DispatchEventToTarget ui/events/event_dispatcher.cc:86:14 #45 0xebbcbf8 in ui::EventDispatcherDelegate::DispatchEvent(ui::EventTarget*, ui::Event*) ui/events/event_dispatcher.cc:58:0 #46 0xca4021f in views::internal::RootView::OnMouseDragged(ui::MouseEvent const&) ui/views/widget/root_view.cc:422:9 #47 0xca5e71b in views::Widget::OnMouseEvent(ui::MouseEvent*) ui/views/widget/widget.cc:1239:22 #48 0xebbd783 in DispatchEvent ui/events/event_dispatcher.cc:191:12 #49 0xebbd783 in ui::EventDispatcher::ProcessEvent(ui::EventTarget*, ui::Event*) ui/events/event_dispatcher.cc:139:0 #50 0xebbcbf8 in DispatchEventToTarget ui/events/event_dispatcher.cc:86:14 #51 0xebbcbf8 in ui::EventDispatcherDelegate::DispatchEvent(ui::EventTarget*, ui::Event*) ui/events/event_dispatcher.cc:58:0 #52 0xebc594f in ui::EventProcessor::OnEventFromSource(ui::Event*) ui/events/event_processor.cc:46:15 #53 0xebc6f28 in DeliverEventToSink ui/events/event_source.cc:73:16 #54 0xebc6f28 in ui::EventSource::SendEventToSink(ui::Event*) ui/events/event_source.cc:51:0 #55 0x1ef37da4 in aura::WindowTreeHostX11::DispatchEvent(_XEvent* const&) ui/aura/window_tree_host_x11.cc:274:9 #56 0xeb9250c in ui::PlatformEventSource::DispatchEvent(_XEvent*) ui/events/platform/platform_event_source.cc:81:29 #57 0xed247b6 in ui::X11EventSource::ExtractCookieDataDispatchEvent(_XEvent*) ui/events/platform/x11/x11_event_source.cc:240:14 #58 0xed24471 in ui::X11EventSource::DispatchXEvents() ui/events/platform/x11/x11_event_source.cc:140:5 #59 0xed23c59 in ui::(anonymous namespace)::XSourceDispatch(_GSource*, int (*)(void*), void*) ui/events/platform/x11/x11_event_source_glib.cc:41:15 #60 0x7f475b7653ce in g_main_dispatch /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3064:27 #61 0x7f475b7653ce in g_main_context_dispatch /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3663:0 #62 0x7f475b766686 in g_main_context_iterate /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3734:5 #63 0x7f475b766a1d in g_main_context_iteration /home/tom/chromium/src/third_party/instrumented_libraries/scripts/out/Instrumented-msan-chained-origins-trusty/gen/third_party/instrumented_libraries/libglib2.0-0/glib2.0-2.40.2/glib/gmain.c:3795:12 #64 0xd270fb3 in base::MessagePumpGlib::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_glib.cc:309:30 #65 0xd25dc2b in base::MessageLoop::RunHandler() base/message_loop/message_loop.cc:387:10 #66 0xd31d81c in base::RunLoop::Run() base/run_loop.cc:37:10 #67 0xd1464d in DetachToBrowserTabDragControllerTest::QuitWhenNotDragging() chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc:527:23 #68 0xd7288e in DetachToBrowserInSeparateDisplayTabDragControllerTest_DragSingleTabToSeparateWindowInSecondDisplay_Test::RunTestOnMainThread() chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc:1812:3 #69 0xa860dfb in content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() content/public/test/browser_test_base.cc:309:5 #70 0x94cd165 in Run base/callback.h:80:12 #71 0x94cd165 in ChromeBrowserMainParts::PreMainMessageLoopRunImpl() chrome/browser/chrome_browser_main.cc:1916:0 #72 0x94c8e14 in ChromeBrowserMainParts::PreMainMessageLoopRun() chrome/browser/chrome_browser_main.cc:1257:18 #73 0x4c94b49 in chromeos::ChromeBrowserMainPartsChromeos::PreMainMessageLoopRun() chrome/browser/chromeos/chrome_browser_main_chromeos.cc:506:32 #74 0x2771066 in content::BrowserMainLoop::PreMainMessageLoopRun() content/browser/browser_main_loop.cc:1161:13 #75 0x381ec1a in Run base/callback.h:80:12 #76 0x381ec1a in content::StartupTaskRunner::RunAllTasksNow() content/browser/startup_task_runner.cc:45:0 #77 0x2768b24 in content::BrowserMainLoop::CreateStartupTasks() content/browser/browser_main_loop.cc:956:25 #78 0x277f340 in content::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams const&) content/browser/browser_main_runner.cc:125:17 #79 0x275c35f in content::BrowserMain(content::MainFunctionParams const&) content/browser/browser_main.cc:42:32 #80 0x934aeba in content::RunNamedProcessTypeMain(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams const&, content::ContentMainDelegate*) content/app/content_main_runner.cc:411:14 #81 0x934dadb in content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:703:12 #82 0x10e02e92 in service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:450:29 #83 0x9347727 in content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 #84 0xa85fea0 in content::BrowserTestBase::SetUp() content/public/test/browser_test_base.cc:265:3 #85 0x9479b7a in InProcessBrowserTest::SetUp() chrome/test/base/in_process_browser_test.cc:266:20 #86 0xc6c1a97 in HandleExceptionsInMethodIfSupported<testing::Test, void> testing/gtest/src/gtest.cc:2458:12 #87 0xc6c1a97 in testing::Test::Run() testing/gtest/src/gtest.cc:2470:0 #88 0xc6c4a8b in testing::TestInfo::Run() testing/gtest/src/gtest.cc:2656:11 #89 0xc6c6029 in testing::TestCase::Run() testing/gtest/src/gtest.cc:2774:28 #90 0xc6e59cd in testing::internal::UnitTestImpl::RunAllTests() testing/gtest/src/gtest.cc:4647:43 #91 0xc6e485e in HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> testing/gtest/src/gtest.cc:2458:12 #92 0xc6e485e in testing::UnitTest::Run() testing/gtest/src/gtest.cc:4255:0 #93 0xd169eb0 in RUN_ALL_TESTS testing/gtest/include/gtest/gtest.h:2237:46 #94 0xd169eb0 in base::TestSuite::Run() base/test/test_suite.cc:271:0 #95 0xab1007 in InteractiveUITestSuiteRunner::RunTestSuite(int, char**) chrome/test/base/interactive_ui_tests_main.cc:85:47 #96 0xa87dcab in content::LaunchTests(content::TestLauncherDelegate*, int, int, char**) content/public/test/test_launcher.cc:520:31 #97 0xab0e43 in main chrome/test/base/interactive_ui_tests_main.cc:109:22 #98 0x7f4755681f44 in __libc_start_main /build/eglibc-oGUzwX/eglibc-2.19/csu/libc-start.c:287:0 #99 0x4a0435 in _start ??:0:0. |