Skip to content

[Follow up to 45144] - Playlist failed to add media & a crash when tried to add media to playlist via sidepanel #45805

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
2 of 6 tasks
MadhaviSeelam opened this issue May 1, 2025 · 0 comments

Comments

@MadhaviSeelam
Copy link

MadhaviSeelam commented May 1, 2025

Description

Found while testing #45144. When tried to add media to playlist, it failed to add with an error message "Sorry, we couldn't find any media on this page". Also Brave crashed when tried to add via playlist sidepael

Steps to reproduce

  1. Install 1.79.x
  2. launch Brave
  3. enable playlist flag via brave://flags
  4. open media in a new tab (eg. https://www.youtube.com/watch?v=JP8aQ4vvVjc)
  5. click playlist button in the URL bar
  6. click Add selected
  7. open playlist side panel
  8. click `Add media from page

Actual result

Sorry, we could not add any media on this page message is shown when tried to add media via playlist button in the URL bar
Tried adding media by clicking Add media from this page button in the playlist sidepanel and Brave crashed

2025-05-01_15h42_59.mp4

Crash details

Status: | Uploaded
-- | --
Uploaded Crash Report ID: | 35c60500-4778-c80d-0000-000000000000
Upload Time: | Thursday, May 1, 2025 at 3:43:11 PM
[ 00 ] base::subtle::RefCountedThreadSafeBase::AddRefImpl() ( ref_counted.h:216 )
[ 01 ] base::subtle::RefCountedThreadSafeBase::AddRef() ( ref_counted.h:186 )
[ 02 ] base::RefCountedThreadSafe<base::internal::WeakReference::Flag,base::DefaultRefCountedThreadSafeTraits<base::internal::WeakReference::Flag> >::AddRefImpl(base::subtle::StartRefCountFromZeroTag) ( ref_counted.h:442 )
[ 03 ] base::RefCountedThreadSafe<base::internal::WeakReference::Flag,base::DefaultRefCountedThreadSafeTraits<base::internal::WeakReference::Flag> >::AddRef() ( ref_counted.h:422 )
[ 04 ] scoped_refptr<const base::internal::WeakReference::Flag>::AddRef(base::internal::WeakReference::Flag const *) ( scoped_refptr.h:385 )
[ 05 ] scoped_refptr<const base::internal::WeakReference::Flag>::scoped_refptr(base::internal::WeakReference::Flag const *) ( scoped_refptr.h:249 )
[ 06 ] playlist::PlaylistBubblesController::ShowBubble(base::WeakPtr<PlaylistActionIconView>,playlist::PlaylistBubblesController::BubbleType) ( playlist_bubbles_controller.cc:38 )
[ 07 ] PlaylistActionIconView::ShowPlaylistBubble(playlist::PlaylistBubblesController::BubbleType) ( playlist_action_icon_view.cc:47 )
[ 08 ] BraveLocationBarView::ShowPlaylistBubble(playlist::PlaylistBubblesController::BubbleType) ( brave_location_bar_view.cc:152 )
[ 09 ] playlist::PlaylistUI::ShowAddMediaToPlaylistUI() ( playlist_ui.cc:240 )
[ 10 ] playlist::mojom::PlaylistPageHandlerStubDispatch::Accept(playlist::mojom::PlaylistPageHandler *,mojo::Message *) ( playlist.mojom.cc:6038 )
[ 11 ] mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message *) ( interface_endpoint_client.cc:1052 )
[ 12 ] mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept(mojo::Message *) ( interface_endpoint_client.cc:371 )
[ 13 ] mojo::internal::MultiplexRouter::ProcessIncomingMessage(mojo::internal::MultiplexRouter::MessageWrapper *,mojo::internal::MultiplexRouter::ClientCallBehavior,base::SequencedTaskRunner *) ( multiplex_router.cc:1062 )
[ 14 ] mojo::internal::MultiplexRouter::Accept(mojo::Message *) ( multiplex_router.cc:732 )
[ 15 ] mojo::MessageDispatcher::Accept(mojo::Message *) ( message_dispatcher.cc:43 )
[ 16 ] mojo::Connector::DispatchMessageW(mojo::ScopedHandleBase<mojo::MessageHandle>) ( connector.cc:562 )
[ 17 ] mojo::Connector::ReadAllAvailableMessages() ( connector.cc:621 )
[ 18 ] mojo::Connector::OnHandleReadyInternal(unsigned int) ( connector.cc:452 )
[ 19 ] mojo::Connector::OnWatcherHandleReady(char const *,unsigned int) ( connector.cc:418 )
[ 20 ] base::internal::DecayedFunctorTraits<void (mojo::Connector::*)(const char *, unsigned int),mojo::Connector *,const char *const &>::Invoke((char const *,unsigned int),mojo::Connector * &&,char const * &&,unsigned int &&) ( bind_internal.h:731 )
[ 21 ] base::internal::InvokeHelper<0,base::internal::FunctorTraits<void (mojo::Connector::*const &)(const char *, unsigned int),mojo::Connector *,const char *const &>,void,0,1>::MakeItSo((char const *,unsigned int) const &,std::__Cr::tuple<base::internal::UnretainedWrapper<mojo::Connector,base::unretained_traits::MayNotDangle,0>,base::internal::UnretainedWrapper<const char,base::unretained_traits::MayNotDangle,0> > const &,unsigned int &&) ( bind_internal.h:923 )
[ 22 ] base::internal::Invoker<base::internal::FunctorTraits<void (mojo::Connector::*const &)(const char *, unsigned int),mojo::Connector *,const char *const &>,base::internal::BindState<1,1,0,void (mojo::Connector::*)(const char *, unsigned int),base::internal::UnretainedWrapper<mojo::Connector,base::unretained_traits::MayNotDangle,0>,base::internal::UnretainedWrapper<const char,base::unretained_traits::MayNotDangle,0> >,void (unsigned int)>::RunImpl((char const *,unsigned int) const &,std::__Cr::tuple<base::internal::UnretainedWrapper<mojo::Connector,base::unretained_traits::MayNotDangle,0>,base::internal::UnretainedWrapper<const char,base::unretained_traits::MayNotDangle,0> > const &,std::__Cr::integer_sequence<unsigned long long,0,1>,unsigned int &&) ( bind_internal.h:1060 )
[ 23 ] base::internal::Invoker<base::internal::FunctorTraits<void (mojo::Connector::*const &)(const char *, unsigned int),mojo::Connector *,const char *const &>,base::internal::BindState<1,1,0,void (mojo::Connector::*)(const char *, unsigned int),base::internal::UnretainedWrapper<mojo::Connector,base::unretained_traits::MayNotDangle,0>,base::internal::UnretainedWrapper<const char,base::unretained_traits::MayNotDangle,0> >,void (unsigned int)>::Run(base::internal::BindStateBase *,unsigned int) ( bind_internal.h:980 )
[ 24 ] mojo::SimpleWatcher::OnHandleReady(int,unsigned int,mojo::HandleSignalsState const &) ( simple_watcher.cc:289 )
[ 25 ] base::internal::InvokeHelper<1,base::internal::FunctorTraits<void (mojo::SimpleWatcher::*&&)(int, unsigned int, const mojo::HandleSignalsState &),base::WeakPtr<mojo::SimpleWatcher> &&,int &&,unsigned int &&,mojo::HandleSignalsState &&>,void,0,1,2,3>::MakeItSo((int,unsigned int,mojo::HandleSignalsState const &) &&,std::__Cr::tuple<base::WeakPtr<mojo::SimpleWatcher>,int,unsigned int,mojo::HandleSignalsState> &&) ( bind_internal.h:947 )
[ 26 ] base::internal::Invoker<base::internal::FunctorTraits<void (mojo::SimpleWatcher::*&&)(int, unsigned int, const mojo::HandleSignalsState &),base::WeakPtr<mojo::SimpleWatcher> &&,int &&,unsigned int &&,mojo::HandleSignalsState &&>,base::internal::BindState<1,1,0,void (mojo::SimpleWatcher::*)(int, unsigned int, const mojo::HandleSignalsState &),base::WeakPtr<mojo::SimpleWatcher>,int,unsigned int,mojo::HandleSignalsState>,void ()>::RunImpl((int,unsigned int,mojo::HandleSignalsState const &) &&,std::__Cr::tuple<base::WeakPtr<mojo::SimpleWatcher>,int,unsigned int,mojo::HandleSignalsState> &&,std::__Cr::integer_sequence<unsigned long long,0,1,2,3>) ( bind_internal.h:1060 )
[ 27 ] base::internal::Invoker<base::internal::FunctorTraits<void (mojo::SimpleWatcher::*&&)(int, unsigned int, const mojo::HandleSignalsState &),base::WeakPtr<mojo::SimpleWatcher> &&,int &&,unsigned int &&,mojo::HandleSignalsState &&>,base::internal::BindState<1,1,0,void (mojo::SimpleWatcher::*)(int, unsigned int, const mojo::HandleSignalsState &),base::WeakPtr<mojo::SimpleWatcher>,int,unsigned int,mojo::HandleSignalsState>,void ()>::RunOnce(base::internal::BindStateBase *) ( bind_internal.h:973 )
[ 28 ] base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::LazyNow *) ( thread_controller_with_message_pump_impl.cc:456 )
[ 29 ] base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork() ( thread_controller_with_message_pump_impl.cc:330 )
[ 30 ] base::MessagePumpForUI::DoRunLoop() ( message_pump_win.cc:266 )
[ 31 ] base::MessagePumpWin::Run(base::MessagePump::Delegate *) ( message_pump_win.cc:90 )
[ 32 ] base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool,base::TimeDelta) ( thread_controller_with_message_pump_impl.cc:632 )
[ 33 ] base::RunLoop::Run(base::Location const &) ( run_loop.cc:136 )
[ 34 ] content::BrowserMainLoop::RunMainMessageLoop() ( browser_main_loop.cc:1096 )
[ 35 ] content::BrowserMainRunnerImpl::Run() ( browser_main_runner_impl.cc:156 )
[ 36 ] content::BrowserMain(content::MainFunctionParams) ( browser_main.cc:32 )
[ 37 ] RunBrowserProcessMain(content::MainFunctionParams,content::ContentMainDelegate *) ( content_main_runner_impl.cc:718 )
[ 38 ] content::ContentMainRunnerImpl::RunBrowser(content::MainFunctionParams,bool) ( content_main_runner_impl.cc:1298 )
[ 39 ] content::ContentMainRunnerImpl::Run() ( content_main_runner_impl.cc:1153 )
[ 40 ] RunContentProcess(content::ContentMainParams,content::ContentMainRunner *) ( content_main.cc:359 )
[ 41 ] content::ContentMain(content::ContentMainParams) ( content_main.cc:372 )
[ 42 ] ChromeMain(HINSTANCE__ *,sandbox::SandboxInterfaceInfo *,__int64,__int64,__int64) ( chrome_main.cc:224 )
[ 43 ] MainDllLoader::Launch(HINSTANCE__ *,base::TimeTicks) ( main_dll_loader_win.cc:201 )
[ 44 ] wWinMain(HINSTANCE__ *,HINSTANCE__ *,wchar_t *,int) ( chrome_exe_main_win.cc:352 )
[ 45 ] invoke_main() ( exe_common.inl:118 )
[ 46 ] __scrt_common_main_seh() ( exe_common.inl:288 )
[ 47 ] BaseThreadInitThunk
[ 48 ] RtlUserThreadStart
[ 49 ] UnhandledExceptionFilter

Expected result

Media should be successfully added to the playlist and Brave should not crash

Reproduces how often

Easily reproduced

Brave version (brave://version info)

Brave 1.79.97 Chromium: 136.0.7103.60 (Official Build) beta (64-bit)
Revision a1f11441d408f4f9662f1a56d93aa2c0d139f5b0
OS Windows 11 Version 24H2 (Build 26100.3775)

Channel information

  • release (stable)
  • beta
  • nightly

Reproducibility

  • with Brave Shields disabled
  • with Brave Rewards disabled
  • in the latest version of Chrome

Miscellaneous information

cc: @brave/qa-team

@MadhaviSeelam MadhaviSeelam changed the title [Follow up to 45144] - Playlist failed to add media & Crash when tried to add sidepael [Follow up to 45144] - Playlist failed to add media & Crash when tried to add sidepanel May 1, 2025
@MadhaviSeelam MadhaviSeelam changed the title [Follow up to 45144] - Playlist failed to add media & Crash when tried to add sidepanel [Follow up to 45144] - Playlist failed to add media & a crash when tried to add media to playlist via sidepanel May 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant