Skip to content

Crash after disable Discord Rich Presence #1441

Description

@GRFTSOL

TLDR: enable Discord Rich Presence from crashing.

For years of using Dopamine 2, I found my disk is shrinking, didn't take it serious, thinking it's just cache file or something else, today I use WizTree and found there's a lot of *.dmp file which shows dopamine is crashed, but I never realize before, it didn't crash at all.
Then I reproduced and found that the dmp file was created once dopamine is exiting, did some auto analyze in windbg (god this tool is extremely convenient, just drag and click then wait), I got the output:

0:005> !analyze -v
................................................................
................................................................
................................................................
................................................................
..................
Loading unloaded module list
.......
*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************

*** WARNING: Unable to verify checksum for Dopamine.Services.dll
Unable to load image C:\Windows\Microsoft.Net\assembly\GAC_64\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll, Win32 error 0n2
MethodDesc:   00007ffeb0ac8248
Method Name:  Dopamine.Services.Discord.RichPresenceService.Finalize()
Class:        00007ffeb0abb750
MethodTable:  00007ffeb0ac8298
mdToken:      000000000600045a
Module:       00007ffeb0a8e810
IsJitted:     yes
CodeAddr:     00007ffeb0e386c0
Transparency: Safe critical
DEBUG_FLR_EXCEPTION_CODE(80004003) and the ".exr -1" ExceptionCode(c0000005) don't match

KEY_VALUES_STRING: 1

    Key  : AV.Dereference
    Value: NullPtr

    Key  : AV.Type
    Value: Read

    Key  : Analysis.CPU.mSec
    Value: 2125

    Key  : Analysis.Elapsed.mSec
    Value: 38361

    Key  : Analysis.IO.Other.Mb
    Value: 95

    Key  : Analysis.IO.Read.Mb
    Value: 3

    Key  : Analysis.IO.Write.Mb
    Value: 200

    Key  : Analysis.Init.CPU.mSec
    Value: 1062

    Key  : Analysis.Init.Elapsed.mSec
    Value: 188132

    Key  : Analysis.Memory.CommitPeak.Mb
    Value: 241

    Key  : Analysis.Version.DbgEng
    Value: 10.0.27829.1001

    Key  : Analysis.Version.Description
    Value: 10.2503.24.01 amd64fre

    Key  : Analysis.Version.Ext
    Value: 1.2503.24.1

    Key  : CLR.BuiltBy
    Value: NET481REL1LAST_C

    Key  : CLR.Engine
    Value: CLR

    Key  : CLR.Exception.System.NullReferenceException._message
    Value: 未将对象引用设置到对象的实例。

    Key  : CLR.Exception.Type
    Value: System.NullReferenceException

    Key  : CLR.Version
    Value: 4.8.9310.0

    Key  : Failure.Bucket
    Value: CLR_EXCEPTION_System.NullReferenceException_80004003_Dopamine.Services.dll!Dopamine.Services.Discord.RichPresenceService.Finalize

    Key  : Failure.Exception.Code
    Value: 0x80004003

    Key  : Failure.Exception.IP.Address
    Value: 0x7ffeb0e386c8

    Key  : Failure.Hash
    Value: {aa456dcb-0bf8-0161-904d-3d09c952141e}

    Key  : Failure.ProblemClass.Primary
    Value: CLR_EXCEPTION

    Key  : Timeline.OS.Boot.DeltaSec
    Value: 37536

    Key  : Timeline.Process.Start.DeltaSec
    Value: 11

    Key  : WER.OS.Branch
    Value: vb_release

    Key  : WER.OS.Version
    Value: 10.0.19041.1

    Key  : WER.Process.Version
    Value: 2.0.10.4000


FILE_IN_CAB:  Dopamine.exe.11700.dmp

NTGLOBALFLAG:  0

APPLICATION_VERIFIER_FLAGS:  0

CONTEXT:  (.ecxr)
rax=00007fff0ffa951b rbx=0000000000000000 rcx=0000002a15bfebd0
rdx=00007fff0ffc2612 rsi=00007ffeb094e040 rdi=000001f5d49d9b50
rip=00007fff1f99af29 rsp=0000002a15bff0f0 rbp=00007ffeb094e040
 r8=00007fff221e1910  r9=00007ffeb0ac8298 r10=0000000000000000
r11=000001f5f181f4b0 r12=0000000040000000 r13=0000002a15bff950
r14=000001f5d6c5b648 r15=0000000000000000
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
KERNELBASE!RaiseException+0x69:
00007fff`1f99af29 0f1f440000      nop     dword ptr [rax+rax]
Resetting default scope

EXCEPTION_RECORD:  (.exr -1)
ExceptionAddress: 00007ffeb0e386c8 (Dopamine_Services!Dopamine.Services.Discord.RichPresenceService.Finalize+0x0000000000000008)
   ExceptionCode: c0000005 (Access violation)
  ExceptionFlags: 00000000
NumberParameters: 2
   Parameter[0]: 0000000000000000
   Parameter[1]: 0000000000000000
Attempt to read from address 0000000000000000

PROCESS_NAME:  Dopamine.exe

READ_ADDRESS:  0000000000000000 

ERROR_CODE: (NTSTATUS) 0xc0000005 - 0x%p            0x%p                    %s

EXCEPTION_CODE_STR:  80004003

EXCEPTION_PARAMETER1:  0000000000000000

EXCEPTION_PARAMETER2:  0000000000000000

FAULTING_THREAD:  ffffffff

STACK_TEXT:  
0000002a`15bff730 00007ffe`b0e386c8 Dopamine_Services!Dopamine.Services.Discord.RichPresenceService.Finalize+0x8


STACK_COMMAND: !C:\ProgramData\Dbg\sym\SOS_AMD64_AMD64_4.8.9310.00.dll\67DB4E3A232000\SOS_AMD64_AMD64_4.8.9310.00.dll.pe 0x1f5d7a24848 ; ** Pseudo Context ** ManagedPseudo ** Value: ffffffff ** ; kb

SYMBOL_NAME:  Dopamine_Services!Dopamine.Services.Discord.RichPresenceService.Finalize+8

MODULE_NAME: Dopamine_Services

IMAGE_NAME:  Dopamine.Services.dll

FAILURE_BUCKET_ID:  CLR_EXCEPTION_System.NullReferenceException_80004003_Dopamine.Services.dll!Dopamine.Services.Discord.RichPresenceService.Finalize

OS_VERSION:  10.0.19041.1

BUILDLAB_STR:  vb_release

OSPLATFORM_TYPE:  x64

OSNAME:  Windows 10

IMAGE_VERSION:  2.0.10.4000

FAILURE_ID_HASH:  {aa456dcb-0bf8-0161-904d-3d09c952141e}

Followup:     MachineOwner
---------

Seems like something with RichPresenceService, I realized I disabled this feature in settings, just turn it on to get rid of the crash.

I know Dopamine 2 is shelved for now, just post here in case somebody have encountered this problem and can have a result of research.

Dump File: https://drive.google.com/file/d/1oGUyWo3MtH7I7CBLbmXcXA9Xvz7_oGzs/view?usp=sharing
In case it is required.

BTW, Dopamine 2 is the best music player for local files I've ever used, hopping from AIMP to MusicPlayer2, even all alternatives on alternativeto.net, I think this is it, thanks for the developer's efforts.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions