New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 740321 link

Starred by 1 user

Issue metadata

Status: Archived
Owner:
Last visit > 30 days ago
Closed: Jul 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 735702



Sign in to add a comment

app_list_unittest cannot do parameterized gtest

Project Member Reported by warx@chromium.org, Jul 8 2017

Issue description

For example:

If I make AppsGridViewTest : public testing::WithParamInterface<bool>, then instantiate parameterized test cases, the second test case will crash:

Received signal 11 SEGV_MAPERR 000000000000
#0 0x7f4f545367cb base::debug::StackTrace::StackTrace()
#1 0x7f4f5453550c base::debug::StackTrace::StackTrace()
#2 0x7f4f545362df base::debug::(anonymous namespace)::StackDumpSignalHandler()
#3 0x7f4f5571c330 <unknown>
#4 0x7f4f521c1ec0 gl::init::HasGLOzone()
#5 0x7f4f521c1c30 gl::init::HasGLOzone()
#6 0x7f4f521c19ca gl::init::CreateOffscreenGLSurfaceWithFormat()
#7 0x7f4f521be56c gl::init::CreateOffscreenGLSurface()
#8 0x7f4f515f56d9 gpu::InProcessCommandBuffer::InitializeOnGpuThread()
#9 0x7f4f515ff155 _ZN4base8internal13FunctorTraitsIMN3gpu22InProcessCommandBufferEFbRKNS3_27InitializeOnGpuThreadParamsEEvE6InvokeIPS3_JS6_EEEbS8_OT_DpOT0_
#10 0x7f4f515ff006 _ZN4base8internal12InvokeHelperILb0EbE8MakeItSoIRKMN3gpu22InProcessCommandBufferEFbRKNS5_27InitializeOnGpuThreadParamsEEJPS5_S8_EEEbOT_DpOT0_
#11 0x7f4f515fef93 _ZN4base8internal7InvokerINS0_9BindStateIMN3gpu22InProcessCommandBufferEFbRKNS4_27InitializeOnGpuThreadParamsEEJNS0_17UnretainedWrapperIS4_EES5_EEEFbvEE7RunImplIRKS9_RKSt5t
upleIJSB_S5_EEJLm0ELm1EEEEbOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#12 0x7f4f515feeac _ZN4base8internal7InvokerINS0_9BindStateIMN3gpu22InProcessCommandBufferEFbRKNS4_27InitializeOnGpuThreadParamsEEJNS0_17UnretainedWrapperIS4_EES5_EEEFbvEE3RunEPNS0_13BindStat
eBaseE
#13 0x7f4f515ffcfd _ZNKR4base8CallbackIFbvELNS_8internal8CopyModeE1ELNS2_10RepeatModeE1EE3RunEv
#14 0x7f4f515f6785 gpu::(anonymous namespace)::RunTaskWithResult<>()
#15 0x7f4f515ff80f _ZN4base8internal13FunctorTraitsIPFvNS_8CallbackIFbvELNS0_8CopyModeE1ELNS0_10RepeatModeE1EEEPbPNS_13WaitableEventEEvE6InvokeIJRKS6_RKS7_RKS9_EEEvSB_DpOT_
#16 0x7f4f515ff712 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKPFvNS_8CallbackIFbvELNS0_8CopyModeE1ELNS0_10RepeatModeE1EEEPbPNS_13WaitableEventEEJRKS8_RKS9_RKSB_EEEvOT_DpOT0_
#17 0x7f4f515ff6a4 _ZN4base8internal7InvokerINS0_9BindStateIPFvNS_8CallbackIFbvELNS0_8CopyModeE1ELNS0_10RepeatModeE1EEEPbPNS_13WaitableEventEEJS7_S8_SA_EEEFvvEE7RunImplIRKSC_RKSt5tupleIJS7_S8
_SA_EEJLm0ELm1ELm2EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#18 0x7f4f515ff57c _ZN4base8internal7InvokerINS0_9BindStateIPFvNS_8CallbackIFbvELNS0_8CopyModeE1ELNS0_10RepeatModeE1EEEPbPNS_13WaitableEventEEJS7_S8_SA_EEEFvvEE3RunEPNS0_13BindStateBaseE
#19 0x7f4f544f599e _ZNO4base8CallbackIFvvELNS_8internal8CopyModeE0ELNS2_10RepeatModeE0EE3RunEv
#20 0x7f4f5453bcd1 base::debug::TaskAnnotator::RunTask()
#21 0x7f4f545c9eee base::MessageLoop::RunTask()
#22 0x7f4f545ca157 base::MessageLoop::DeferOrRunPendingTask()
#23 0x7f4f545ca46f base::MessageLoop::DoWork()
#24 0x7f4f545db198 base::MessagePumpDefault::Run()
#25 0x7f4f545c9953 base::MessageLoop::Run()
#26 0x7f4f54669257 base::RunLoop::Run()
#27 0x7f4f547156f2 base::Thread::Run()
#28 0x7f4f54715ee3 base::Thread::ThreadMain()
#29 0x7f4f546f93ca base::(anonymous namespace)::ThreadFunc()
#30 0x7f4f55714184 start_thread
#31 0x7f4f4f87dffd clone

I can fix it by adding std::unique_ptr<aura::Env> env_ to AppListTestSuite just like: https://cs.chromium.org/chromium/src/ui/aura/test/run_all_unittests.cc?q=auratestsui&sq=package:chromium&l=31

However, I lack the knowledge to explain it. cc sky@, sadrul@ for guidance.
 

Comment 1 by warx@chromium.org, Jul 10 2017

Blocking: 735702
Project Member

Comment 2 by bugdroid1@chromium.org, Jul 10 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2df61399d4dee3d9f4c68f6b55a706de34568daa

commit 2df61399d4dee3d9f4c68f6b55a706de34568daa
Author: Qiang Xu <warx@chromium.org>
Date: Mon Jul 10 21:55:47 2017

app_list: create a single Env instance for app_list_unittests

Bug:  740321 
TEST: covered by tests and the issue in  crbug.com/740321  can be solved.
Change-Id: I9ff64cde700bc280efda6f27fdf8dc6acac4faa7
Reviewed-on: https://chromium-review.googlesource.com/564317
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: Steven Bennetts <stevenjb@chromium.org>
Commit-Queue: Qiang(Joe) Xu <warx@chromium.org>
Cr-Commit-Position: refs/heads/master@{#485413}
[modify] https://crrev.com/2df61399d4dee3d9f4c68f6b55a706de34568daa/ui/app_list/test/run_all_unittests.cc

Comment 3 by warx@chromium.org, Jul 10 2017

Status: Fixed (was: Assigned)

Comment 4 by warx@chromium.org, Jul 11 2017

Cc: vadimt@chromium.org newcomer@chromium.org warx@chromium.org weidongg@chromium.org
 Issue 740785  has been merged into this issue.

Comment 5 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment