nvdweem/PCPanel

Application crashes silently (unknown trigger)

Closed this issue · 12 comments

Describe the bug:

I notice the lights go off from time to time and check the app in the system tray and it disappears as soon as I mouseover it.
Checked event to find the following:

Faulting application name: PCPanel.exe, version: 22.41.21156.0, time stamp: 0x0c42fcfb
Faulting module name: SndCtrl.1.5.dll, version: 0.0.0.0, time stamp: 0x62b8960a
Exception code: 0xc0000005
Fault offset: 0x0000000000005dc3
Faulting process id: 0x0x84B4
Faulting application start time: 0x0x1D8E7AD1F898E3E
Faulting application path: C:\Users\mehis\AppData\Local\PCPanel\PCPanel.exe
Faulting module path: C:\Users\mehis\AppData\Local\Temp\SndCtrl.1.5.dll
Report Id: 7e111bc2-4c5f-4c94-b5d3-247b35762187
Faulting package full name: 
Faulting package-relative application ID: 

Steps to reproduce:

Seems to just happen randomly (?)

Expected behavior:

App to not crash randomly

Additional context:

Laptop
OS: Windows 11 Home 22H2 build 22621.674
CPU: Intel(R) Core(TM) i7-10875H CPU @ 2.30GHz
RAM: 32GB
App run in administrator mode
I have the official app installed but not running

App version: release 1.5
File version (properties): 22.41.21156.0

I've seen this happen too, I'm pretty sure it has something to do with the listeners that listen to the volume/device change events but I haven't been able to pinpoint what exactly is causing the issue.
I'll try to change it 'soon' so that it's an executable so that if it crashes it won't take the rest of the software with it.

I've also had issues with sndctrl with the official app (which is why I found this repo) seems to be a common thread?

I've stored the debug symbols of the dll in the 1.6-snapshot version so that crashdumps should be debuggable. I'm currently hoping that it crashes again for me but it almost never seems to happen.

Just installed the snapshot. Will report back if/when it crashes

image

Faulting module name: SndCtrl.1.6-SNAPSHOT.dll, version: 0.0.0.0, time stamp: 0x635e64b3
Exception code: 0xc0000005
Fault offset: 0x00000000000062d3
Faulting process id: 0x0x12CC
Faulting application start time: 0x0x1D8ED34C51215B4
Faulting application path: C:\Users\mehis\AppData\Local\PCPanel\PCPanel.exe
Faulting module path: C:\Users\mehis\AppData\Local\Temp\SndCtrl.1.6-SNAPSHOT.dll
Report Id: 620fdbaa-35d7-48e6-89ee-14f307755026
Faulting package full name: 
Faulting package-relative application ID:

Couldn't get to the windows dumps, if those are helpful at all

I think that I need the dump to actually debug anything. From what I can tell, the Exception code is just that an Access Violation occurred, the fault offset is very low so I'm guessing that a nullpointer is being dereferenced.
Is there no dmp file in %localappdata%\CrashDumps?

Oh there are dumps there. Was looking at the windows WER stuff.
Here's a link to a zip of the lot
https://www.dropbox.com/s/zef3vmb08ogcok5/PCPanel.exe.crashdump.zip?dl=0

Awesome, this seems to help.
The Microsoft documentation describes that when a new default device is assigned, it can be null. I hadn't expected that so it wasn't handled properly.

I added a null-check to prevent the crash. Not sure if this solves everything, but it should at least solve the last crash you had :).

Ok running the new snapshot 22.45.62047.0
Will see if it stays healthy.

So this happens when default sound device changes? If that's the case it would be easier to test

Apparently it should happen when the default device changes to no-device-selected. I was able to reproduce it locally by disabling all devices but one and then to disconnect that one device.

The documentation mentions this:

If the user has removed or disabled the default device for a particular role, and no other device is available to assume that role, then pwstrDefaultDevice is NULL.

Ok running the new snapshot 22.45.62047.0 Will see if it stays healthy.

So this happens when default sound device changes? If that's the case it would be easier to test

Been running this build for over a week now and it hasn't crashed 👍
Can probably close this issue!

Closed as requested :)