brave-browser: [Debug] AssertBlockingAllowed fails while analyzing a downloaded file

Repro steps (only on debug builds) :

  1. Open Brave Browser
  2. Navigate to https://github.com/brave/brave-browser/releases/download/v0.59.21/Brave-Browser-Beta.dmg and click save
  3. Wait for the download to finish.
[48500:775:0109/162725.077743:FATAL:thread_restrictions.cc(34)] Check failed: !g_blocking_disallowed.Get().Get(). Function marked as blocking was called from a scope that disallows blocking! If this task is running inside the TaskScheduler, it needs to have MayBlock() in its TaskTraits. Otherwise, consider making this blocking work asynchronous or, as a last resort, you may use ScopedAllowBlocking (see its documentation for best practices).
0   libbase.dylib                       0x000000010fe34cf3 base::debug::StackTrace::StackTrace(unsigned long) + 83
1   libbase.dylib                       0x000000010fe34dad base::debug::StackTrace::StackTrace(unsigned long) + 29
2   libbase.dylib                       0x000000010fb220fa base::debug::StackTrace::StackTrace() + 26
3   libbase.dylib                       0x000000010fb69aae logging::LogMessage::~LogMessage() + 142
4   libbase.dylib                       0x000000010fb688a5 logging::LogMessage::~LogMessage() + 21
5   libbase.dylib                       0x000000010fd8ebec base::internal::AssertBlockingAllowed() + 188
6   libbase.dylib                       0x000000010fd7736d base::ScopedBlockingCall::ScopedBlockingCall(base::BlockingType) + 237
7   libbase.dylib                       0x000000010fd7762b base::ScopedBlockingCall::ScopedBlockingCall(base::BlockingType) + 27
8   libbase.dylib                       0x000000010fe423b8 base::File::DoInitialize(base::FilePath const&, unsigned int) + 72
9   libbase.dylib                       0x000000010fb364a7 base::File::Initialize(base::FilePath const&, unsigned int) + 199
10  libbase.dylib                       0x000000010fb363d6 base::File::File(base::FilePath const&, unsigned int) + 102
11  libbase.dylib                       0x000000010fb36503 base::File::File(base::FilePath const&, unsigned int) + 35
12  libchrome_dll.dylib                 0x0000000120d002bf safe_browsing::FileAnalyzer::StartExtractDmgFeatures() + 303
13  libchrome_dll.dylib                 0x0000000120cffb67 safe_browsing::FileAnalyzer::Start(base::FilePath const&, base::FilePath const&, base::OnceCallback<void (safe_browsing::FileAnalyzer::Results)>) + 1559
14  libchrome_dll.dylib                 0x0000000120cd865b safe_browsing::CheckClientDownloadRequest::AnalyzeFile() + 1259
15  libchrome_dll.dylib                 0x0000000120cd643d safe_browsing::CheckClientDownloadRequest::OnUrlWhitelistCheckDone(bool) + 605
16  libchrome_dll.dylib                 0x0000000120cddedc void base::internal::FunctorTraits<void (safe_browsing::CheckClientDownloadRequest::*)(bool), void>::Invoke<void (safe_browsing::CheckClientDownloadRequest::*)(bool), base::WeakPtr<safe_browsing::CheckClientDownloadRequest>, bool>(void (safe_browsing::CheckClientDownloadRequest::*)(bool), base::WeakPtr<safe_browsing::CheckClientDownloadRequest>&&, bool&&) + 156
17  libchrome_dll.dylib                 0x0000000120cddd9f void base::internal::InvokeHelper<true, void>::MakeItSo<void (safe_browsing::CheckClientDownloadRequest::*)(bool), base::WeakPtr<safe_browsing::CheckClientDownloadRequest>, bool>(void (safe_browsing::CheckClientDownloadRequest::*&&)(bool), base::WeakPtr<safe_browsing::CheckClientDownloadRequest>&&, bool&&) + 127
18  libchrome_dll.dylib                 0x0000000120cddcf7 void base::internal::Invoker<base::internal::BindState<void (safe_browsing::CheckClientDownloadRequest::*)(bool), base::WeakPtr<safe_browsing::CheckClientDownloadRequest> >, void (bool)>::RunImpl<void (safe_browsing::CheckClientDownloadRequest::*)(bool), std::__1::tuple<base::WeakPtr<safe_browsing::CheckClientDownloadRequest> >, 0ul>(void (safe_browsing::CheckClientDownloadRequest::*&&)(bool), std::__1::tuple<base::WeakPtr<safe_browsing::CheckClientDownloadRequest> >&&, std::__1::integer_sequence<unsigned long, 0ul>, bool&&) + 87
19  libchrome_dll.dylib                 0x0000000120cddbeb base::internal::Invoker<base::internal::BindState<void (safe_browsing::CheckClientDownloadRequest::*)(bool), base::WeakPtr<safe_browsing::CheckClientDownloadRequest> >, void (bool)>::RunOnce(base::internal::BindStateBase*, bool) + 107
20  libchrome_dll.dylib                 0x000000011aa39eea base::OnceCallback<void (bool)>::Run(bool) && + 122
21  libchrome_dll.dylib                 0x000000011ba47233 void base::internal::ReplyAdapter<bool, bool>(base::OnceCallback<void (bool)>, std::__1::unique_ptr<bool, std::__1::default_delete<bool> >*) + 243```

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 17 (10 by maintainers)

Most upvoted comments

Ok cool, the upstream patch has been approved. It should be merged soon.