[CRD iOS] Crash at GetHttpReasonPhrase() |
|||
Issue description"URLFetcher::RESPONSE_CODE_INVALID" is being passed. #0 0x000000010185c7d8 in base::debug::BreakDebugger() at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/debug/debugger_posix.cc:258 #1 0x00000001018b2dc0 in logging::LogMessage::~LogMessage() at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/logging.cc:855 #2 0x00000001018afc54 in logging::LogMessage::~LogMessage() at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/logging.cc:588 #3 0x00000001022da574 in net::GetHttpReasonPhrase(net::HttpStatusCode) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../net/http/http_status_code.cc:19 #4 0x00000001017c17fc in remoting::HostListService::HandleFetchFailure(remoting::HostListService::FetchFailureReason, int) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../remoting/ios/facade/host_list_service.mm:169 #5 0x00000001017c26a8 in remoting::HostListService::HandleHostListResult(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../remoting/ios/facade/host_list_service.mm:145 #6 0x00000001017c4dc0 in void base::internal::FunctorTraits<void (remoting::HostListService::*)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), void>::Invoke<base::WeakPtr<remoting::HostListService>, int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&>(void (remoting::HostListService::*)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), base::WeakPtr<remoting::HostListService>&&, int&&, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&&&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:447 #7 0x00000001017c4ce0 in void base::internal::InvokeHelper<true, void>::MakeItSo<void (remoting::HostListService::*)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), base::WeakPtr<remoting::HostListService>, int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&>(void (remoting::HostListService::*&&)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), base::WeakPtr<remoting::HostListService>&&, int&&, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&&&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:550 #8 0x00000001017c4c54 in void base::internal::Invoker<base::internal::BindState<void (remoting::HostListService::*)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), base::WeakPtr<remoting::HostListService> >, void (int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&)>::RunImpl<void (remoting::HostListService::*)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), std::__1::tuple<base::WeakPtr<remoting::HostListService> >, 0ul>(void (remoting::HostListService::*&&)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), std::__1::tuple<base::WeakPtr<remoting::HostListService> >&&, std::__1::integer_sequence<unsigned long, 0ul>, int&&, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:604 #9 0x00000001017c4b3c in base::internal::Invoker<base::internal::BindState<void (remoting::HostListService::*)(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&), base::WeakPtr<remoting::HostListService> >, void (int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&)>::RunOnce(base::internal::BindStateBase*, int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:572 #10 0x00000001017baa60 in base::OnceCallback<void (int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&)>::Run(int, std::__1::vector<remoting::HostInfo, std::__1::allocator<remoting::HostInfo> > const&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/callback.h:95 #11 0x00000001017bba40 in remoting::HostListFetcher::OnURLFetchComplete(net::URLFetcher const*) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../remoting/ios/facade/host_list_fetcher.cc:144 #12 0x000000010285319c in net::URLFetcherCore::InformDelegateFetchIsComplete() at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../net/url_request/url_fetcher_core.cc:729 #13 0x0000000102853050 in net::URLFetcherCore::OnCompletedURLRequest(base::TimeDelta) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../net/url_request/url_fetcher_core.cc:722 #14 0x0000000102858f30 in void base::internal::FunctorTraits<void (net::URLFetcherCore::*)(base::TimeDelta), void>::Invoke<scoped_refptr<net::URLFetcherCore> const&, base::TimeDelta const&>(void (net::URLFetcherCore::*)(base::TimeDelta), scoped_refptr<net::URLFetcherCore> const&&&, base::TimeDelta const&&&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:447 #15 0x0000000102858e84 in void base::internal::InvokeHelper<false, void>::MakeItSo<void (net::URLFetcherCore::* const&)(base::TimeDelta), scoped_refptr<net::URLFetcherCore> const&, base::TimeDelta const&>(void (net::URLFetcherCore::* const&&&)(base::TimeDelta), scoped_refptr<net::URLFetcherCore> const&&&, base::TimeDelta const&&&) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:530 #16 0x0000000102858e14 in void base::internal::Invoker<base::internal::BindState<void (net::URLFetcherCore::*)(base::TimeDelta), scoped_refptr<net::URLFetcherCore>, base::TimeDelta>, void ()>::RunImpl<void (net::URLFetcherCore::* const&)(base::TimeDelta), std::__1::tuple<scoped_refptr<net::URLFetcherCore>, base::TimeDelta> const&, 0ul, 1ul>(void (net::URLFetcherCore::* const&&&)(base::TimeDelta), std::__1::tuple<scoped_refptr<net::URLFetcherCore>, base::TimeDelta> const&&&, std::__1::integer_sequence<unsigned long, 0ul, 1ul>) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:604 #17 0x0000000102858d08 in base::internal::Invoker<base::internal::BindState<void (net::URLFetcherCore::*)(base::TimeDelta), scoped_refptr<net::URLFetcherCore>, base::TimeDelta>, void ()>::Run(base::internal::BindStateBase*) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/bind_internal.h:586 #18 0x0000000101468cf8 in base::OnceCallback<void ()>::Run() && at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/callback.h:95 #19 0x000000010185ff8c in base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/debug/task_annotator.cc:101 #20 0x00000001018d5170 in base::internal::IncomingTaskQueue::RunTask(base::PendingTask*) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/message_loop/incoming_task_queue.cc:124 #21 0x00000001018e0128 in base::MessageLoop::RunTask(base::PendingTask*) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/message_loop/message_loop.cc:326 #22 0x00000001018e06cc in base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/message_loop/message_loop.cc:336 #23 0x00000001018e09e8 in base::MessageLoop::DoWork() at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/message_loop/message_loop.cc:380 #24 0x0000000101b30d9c in base::MessagePumpCFRunLoopBase::RunWork() at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/message_loop/message_pump_mac.mm:462 #25 0x0000000101b30d18 in ::___ZN4base24MessagePumpCFRunLoopBase13RunWorkSourceEPv_block_invoke() at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/message_loop/message_pump_mac.mm:439 #26 0x0000000101b25170 in base::mac::CallWithEHFrame(void () block_pointer) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/mac/call_with_eh_frame.cc:18 #27 0x0000000101b300e8 in base::MessagePumpCFRunLoopBase::RunWorkSource(void*) at /Users/yuweih/Workspace/bling/src/out/ios-device-debug/../../base/message_loop/message_pump_mac.mm:438
,
Apr 17 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e3634cb492e52d944122012a9364d0b80d8fe0eb commit e3634cb492e52d944122012a9364d0b80d8fe0eb Author: Yuwei Huang <yuweih@chromium.org> Date: Tue Apr 17 00:23:28 2018 [CRD iOS] Prevent crash when failed to fetch host list HostListFetcher returns a -1 error code when it fails to get the HTTP response (because of timeout?). We map the HTTP code into error message using net::GetHttpReasonPhrase(), which reaches NOTREACHED() when the argument is -1 and causes a crash on debug build. This CL prevents this by explicitly translating -1 into "Connection failed". Bug: 832994 Change-Id: I94f5c353de2674500190efb9dc8066ad40aaed8e Reviewed-on: https://chromium-review.googlesource.com/1012787 Commit-Queue: Yuwei Huang <yuweih@chromium.org> Reviewed-by: Jamie Walch <jamiewalch@chromium.org> Cr-Commit-Position: refs/heads/master@{#551181} [modify] https://crrev.com/e3634cb492e52d944122012a9364d0b80d8fe0eb/remoting/ios/facade/host_list_fetcher.cc [modify] https://crrev.com/e3634cb492e52d944122012a9364d0b80d8fe0eb/remoting/ios/facade/host_list_fetcher.h [modify] https://crrev.com/e3634cb492e52d944122012a9364d0b80d8fe0eb/remoting/ios/facade/host_list_service.mm
,
Apr 17 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8d8492942a30edd894ad1425d92de39cf2611d5f commit 8d8492942a30edd894ad1425d92de39cf2611d5f Author: Yuwei Huang <yuweih@chromium.org> Date: Tue Apr 17 00:42:07 2018 [CRD iOS] Prevent crash when failed to fetch host list HostListFetcher returns a -1 error code when it fails to get the HTTP response (because of timeout?). We map the HTTP code into error message using net::GetHttpReasonPhrase(), which reaches NOTREACHED() when the argument is -1 and causes a crash on debug build. This CL prevents this by explicitly translating -1 into "Connection failed". Bug: 832994 Change-Id: I94f5c353de2674500190efb9dc8066ad40aaed8e Reviewed-on: https://chromium-review.googlesource.com/1012787 Commit-Queue: Yuwei Huang <yuweih@chromium.org> Reviewed-by: Jamie Walch <jamiewalch@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#551181}(cherry picked from commit e3634cb492e52d944122012a9364d0b80d8fe0eb) Reviewed-on: https://chromium-review.googlesource.com/1013549 Reviewed-by: Yuwei Huang <yuweih@chromium.org> Cr-Commit-Position: refs/branch-heads/3396@{#34} Cr-Branched-From: 9ef2aa869bc7bc0c089e255d698cca6e47d6b038-refs/heads/master@{#550428} [modify] https://crrev.com/8d8492942a30edd894ad1425d92de39cf2611d5f/remoting/ios/facade/host_list_fetcher.cc [modify] https://crrev.com/8d8492942a30edd894ad1425d92de39cf2611d5f/remoting/ios/facade/host_list_fetcher.h [modify] https://crrev.com/8d8492942a30edd894ad1425d92de39cf2611d5f/remoting/ios/facade/host_list_service.mm
,
Apr 17 2018
|
|||
►
Sign in to add a comment |
|||
Comment 1 by sheriffbot@chromium.org
, Apr 15 2018