Google-play-music-desktop-player-unofficial-: Mac OS: Crash on cmd+q

Created on 1 Oct 2018  ·  19Comments  ·  Source: MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-

OS: Mac OS X 10.14

GPMDP Version: 4.6.1

Issue Descriptions: Crash on cmd+q

Steps to Reproduce: tap cmd+q

Process:               Google Play Music Desktop Player [251]
Path:                  /Applications/Google Play Music Desktop Player.app/Contents/MacOS/Google Play Music Desktop Player
Identifier:            google-play-music-desktop-player
Version:               4.6.1 (4.6.1)
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Google Play Music Desktop Player [251]
User ID:               501

Date/Time:             2018-10-01 02:20:11.482 +0300
OS Version:            Mac OS X 10.14 (18A391)
Report Version:        12
Bridge OS Version:     3.0 (14Y667)

Time Awake Since Boot: 28000 seconds
Time Since Wake:       2200 seconds

System Integrity Protection: enabled

Crashed Thread:        0  CrBrowserMain  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes:       0x0000000000000001, 0x0000000000000000

Application Specific Information:
*** CFHash() called with NULL ***

Thread 0 Crashed:: CrBrowserMain  Dispatch queue: com.apple.main-thread
0   com.apple.CoreFoundation        0x00007fff37985ccc CFHash + 372
1   com.apple.CoreFoundation        0x00007fff379b1547 CFBasicHashGetCountOfKey + 198
2   com.apple.CoreFoundation        0x00007fff379b5524 CFSetContainsValue + 73
3   com.apple.CoreFoundation        0x00007fff379d20d2 CFRunLoopRemoveSource + 366
4   com.github.electron.framework   0x0000000106c79514 extensions::GlobalShortcutListenerMac::StopWatchingMediaOrVolumeKeys() + 36
5   com.github.electron.framework   0x0000000106c79f57 extensions::GlobalShortcutListenerMac::UnregisterAcceleratorImpl(ui::Accelerator const&) + 215
6   com.github.electron.framework   0x0000000106c78b26 extensions::GlobalShortcutListener::UnregisterAccelerator(ui::Accelerator const&, extensions::GlobalShortcutListener::Observer*) + 150
7   com.github.electron.framework   0x0000000106c78c89 extensions::GlobalShortcutListener::UnregisterAccelerators(extensions::GlobalShortcutListener::Observer*) + 297
8   com.github.electron.framework   0x0000000106b5b992 atom::api::GlobalShortcut::UnregisterAll() + 34
9   com.github.electron.framework   0x0000000106b5b94a atom::api::GlobalShortcut::~GlobalShortcut() + 58
10  com.github.electron.framework   0x0000000106b5b9f9 atom::api::GlobalShortcut::~GlobalShortcut() + 9
11  com.github.electron.framework   0x0000000106b5ba2e atom::api::GlobalShortcut::~GlobalShortcut() + 14
12  com.github.electron.framework   0x0000000106b5ba4d non-virtual thunk to atom::api::GlobalShortcut::~GlobalShortcut() + 13
13  com.github.electron.framework   0x0000000106bc577f mate::TrackableObjectBase::Destroy() + 15
14  com.github.electron.framework   0x0000000106bc59ea 0x106b28000 + 645610
15  com.github.electron.framework   0x0000000106bc59b8 0x106b28000 + 645560
16  com.github.electron.framework   0x0000000106bc597c 0x106b28000 + 645500
17  com.github.electron.framework   0x0000000106bc5944 base::internal::Invoker<base::internal::BindState<void (mate::TrackableObjectBase::*)(), base::WeakPtr<mate::TrackableObjectBase> >, void ()>::Run(base::internal::BindStateBase*) + 20
18  com.github.electron.framework   0x0000000106b3d3b0 0x106b28000 + 86960
19  com.github.electron.framework   0x0000000106bcf42d atom::AtomBrowserMainParts::PostMainMessageLoopRun() + 77
20  com.github.electron.framework   0x0000000107039039 0x106b28000 + 5312569
21  com.github.electron.framework   0x000000010703b57c 0x106b28000 + 5322108
22  com.github.electron.framework   0x0000000107034d78 0x106b28000 + 5295480
23  com.github.electron.framework   0x0000000106f7df40 0x106b28000 + 4546368
24  com.github.electron.framework   0x0000000108b733d4 0x106b28000 + 33862612
25  com.github.electron.framework   0x0000000106f7cd54 0x106b28000 + 4541780
26  com.github.electron.framework   0x0000000106b2aa44 AtomMain + 68
27  google-play-music-desktop-player    0x0000000106b1ff26 main + 38
28  libdyld.dylib                   0x00007fff64a4b085 start + 1

Most helpful comment

Still have this crash on public release Mojave 10.14 (18A391)

All 19 comments

👋 Thanks for opening your first issue here! If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of duplicate issues on this repo, so please double check now that your issue has not already been solved or doesn't have an open issue already.
To help make it easier for us to investigate your issue, please follow the contributing guidelines and ensure the issue template was filled out.

Can reproduce, started with Mojave. When you Quit the app, it hangs for ~30 sec before getting that SIGILL.

Workaround that will made it work as normal for me: give GPMDP "Accessibility" permissions:
screenshot 2018-10-05 at 11 28 40

I believe updating Electron in the package.json would also fix this (without needing to give Accessibility permissions), but don't have time to check.

I've looked into it some more. Updating Electron to 2.0.9 makes it crash much faster when doing cmd+q (now it crashes almost instantly instead of hanging for 20+ seconds).

I believe the cause of the issue is https://github.com/electron/electron/issues/14837. But what I said regarding "give GPMDP Accessibility permissions" is still a working workaround, but hopefully Electron gets this fixed soon.

I don't have this on the General Availability release of Mojave. Can you confirm it is still an issue on the public Mojave releases

Still have this crash on public release Mojave 10.14 (18A391)

I can also confirm that it still happens when building from HEAD on Mojave 18A391. If you're having trouble reproducing it, make sure you haven't given electron (or similar) Accessibility permissions.

+1 normally happens on quit, but today I had a random crash when switching to YouTube music, not sure if it's related and I haven't been able to repro.

OSX: 10.14, MacBook Pro (15-inch, 2018) I9

+1

Getting this issue too on Mojave. 4.6.1 installed via web link.

Hi! I'm working on the similar application, but for Yandex.Music. Here's my small native binding for this which can be used as a workaround until Electron fixes it: https://github.com/4ndv/node-mac-accessibility-features-check

It allows to determine user's consent on Accessibility.

I've never tried to build application under different OSes and it probably requires a Mac to build, but for me it works ¯_(ツ)_/¯

Nice work @4ndv but I assume you do actually need to give it Accessibility permissions to prevent the crash? I don't want to do that, though.

@deed02392 actually not, it crashes only if an app without such permissions registers a global shortcut. This library can be used just to check permissions and register hotkeys only if they are present.

Ahh fantastic, so what causes the crash? The app tries to do something not
allowed so it gets killed by the macos runtime?

On Sat, 15 Dec 2018, 06:27 Andrey Viktorov, notifications@github.com
wrote:

@deed02392 https://github.com/deed02392 actually not, it crashes only
if an app without such permissions registers a global shortcut. This
library can be used just to check permissions and register hotkeys only if
they are present.


You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/issues/3369#issuecomment-447541848,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADX01-05VMfgXpoCvdcYt9ZO9q50ZCMxks5u5JZdgaJpZM4XBNbR
.

@4ndv I commented out the globalShortcuts import (and all the calling code) in src/main/features/core/keyboardShortcuts.js and I still get the crash. My report looks different to the one in this thread, though, it doesn't mention reference to the GlobalShortcut::UnregisterAll method. I confirmed the behaviour is present or not with Accessibility permission off or on (respectively). So there must be another source to this crash.

@deed02392 can you provide crashlog or post it in here: electron/electron#16090?

Sure, added a crashlog to your issue.

Correct me if i'm wrong but isnt cmd+q the "quit command"?

Correct me if i'm wrong but isnt cmd+q the "quit command"?

Yes it is

This will be fixed by the incoming Electron upgrade

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ARTVRO picture ARTVRO  ·  3Comments

tehdef picture tehdef  ·  4Comments

St0rmwindX picture St0rmwindX  ·  3Comments

GeraldNDA picture GeraldNDA  ·  3Comments

logictom picture logictom  ·  4Comments