• Etienne Bergeron's avatar
    Fix traces output during chrome shutdown · 3b8b7c35
    Etienne Bergeron authored
    The tasks on shutdown are not scheduled if not mark as "BLOCK_SHUTDOWN".
    This behavior leads FileTraceDataEndpoint object into an inconsistant
    state since its assumes tasks are executed to close the endpoint.
    
    The following stackframe shows the problem:
    
    [26692:22732:1204/131653.908:ERROR:tracing_controller_impl_data_endpoint.cc(68)] FileTraceDataEndpoint: c:\src\chromium\startup.json
    [26692:21808:1204/131719.958:ERROR:tracing_controller_impl_data_endpoint.cc(102)] OpenFileIfNeededOnBlockingThread!
    [26692:22732:1204/131735.498:FATAL:tracing_controller_impl_data_endpoint.cc(86)] Check failed: file_ == nullptr.
    Backtrace:
            base::debug::CollectStackTrace [0x00007FF87DAE24B2+18] (C:\src\chromium\src\base\debug\stack_trace_win.cc:303)
            base::debug::StackTrace::StackTrace [0x00007FF87D9D6AE2+18] (C:\src\chromium\src\base\debug\stack_trace.cc:195)
            logging::LogMessage::~LogMessage [0x00007FF87D9F2C94+148] (C:\src\chromium\src\base\logging.cc:566)
            logging::LogMessage::~LogMessage [0x00007FF87D9F3B80+16] (C:\src\chromium\src\base\logging.cc:559)
            content::`anonymous namespace'::FileTraceDataEndpoint::~FileTraceDataEndpoint [0x00007FF8603C5A50+96] (C:\src\chromium\src\content\browser\tracing\tracing_controller_impl_data_endpoint.cc:86)
            content::TracingControllerImpl::~TracingControllerImpl [0x00007FF8603C1B88+114] (C:\src\chromium\src\content\browser\tracing\tracing_controller_impl.cc:206)
            content::TracingControllerImpl::~TracingControllerImpl [0x00007FF8603C3F20+16] (C:\src\chromium\src\content\browser\tracing\tracing_controller_impl.cc:206)
            content::BrowserMainLoop::~BrowserMainLoop [0x00007FF85FD41EA7+295] (C:\src\chromium\src\content\browser\browser_main_loop.cc:549)
            content::BrowserMainLoop::~BrowserMainLoop [0x00007FF85FD46480+16] (C:\src\chromium\src\content\browser\browser_main_loop.cc:545)
            content::BrowserMainRunnerImpl::Shutdown [0x00007FF85FD476B8+312] (C:\src\chromium\src\content\browser\browser_main_runner_impl.cc:193)
            content::BrowserMain [0x00007FF85FD41935+213] (C:\src\chromium\src\content\browser\browser_main.cc:52)
            content::RunBrowserProcessMain [0x00007FF8609437C8+104] (C:\src\chromium\src\content\app\content_main_runner_impl.cc:520)
            content::ContentMainRunnerImpl::RunBrowser [0x00007FF86094469D+1005] (C:\src\chromium\src\content\app\content_main_runner_impl.cc:1008)
            content::ContentMainRunnerImpl::Run [0x00007FF860944289+457] (C:\src\chromium\src\content\app\content_main_runner_impl.cc:888)
            content::RunContentProcess [0x00007FF860943295+1573] (C:\src\chromium\src\content\app\content_main.cc:372)
            content::ContentMain [0x00007FF86094338D+61] (C:\src\chromium\src\content\app\content_main.cc:398)
            ChromeMain [0x00007FF84BD11225+389] (C:\src\chromium\src\chrome\app\chrome_main.cc:133)
            MainDllLoader::Launch [0x00007FF749A926B5+391] (C:\src\chromium\src\chrome\app\main_dll_loader_win.cc:169)
            wWinMain [0x00007FF749A91ADF+2783] (C:\src\chromium\src\chrome\app\chrome_exe_main_win.cc:345)
            __scrt_common_main_seh [0x00007FF749B89926+262] (d:\A01\_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
            BaseThreadInitThunk [0x00007FF8BF304034+20]
            RtlUserThreadStart [0x00007FF8C0913691+33]
    
    R=gab@chromium.org, eseckler@chromium.org, fdoray@chromium.org
    
    Bug: 1082916
    Change-Id: I715d13e47de44c974a80ee80bec0f44639691786
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2575257Reviewed-by: default avatarEric Seckler <eseckler@chromium.org>
    Reviewed-by: default avatarGabriel Charette <gab@chromium.org>
    Commit-Queue: Gabriel Charette <gab@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#833882}
    3b8b7c35
tracing_controller_impl_data_endpoint.cc 8.88 KB