Author Topic: AccessViolationException in BASS_Mixer_ChannelGetPosition  (Read 165 times)

smoogipoo

  • Posts: 9
Hello!

We've had a user report an AV in BASS_Mixer_ChannelGetPosition here: https://github.com/ppy/osu/issues/31702.

Code: [Select]
0:017> kb
 # RetAddr           : Args to Child                                                           : Call Site
00 00007fff`4ff44815 : 000000c3`c957e9b0 000000c3`c957e9b0 00000000`00000000 00007ffe`f42c0000 : coreclr!EEPolicy::HandleFatalError+0x7d [D:\a\_work\1\s\src\coreclr\vm\eepolicy.cpp @ 777]
01 00007fff`ac3f292f : 000000c3`c957e9b0 000000c3`c957f290 00000000`00000000 000000c3`c957e340 : coreclr!ProcessCLRException+0x1106b5 [D:\a\_work\1\s\src\coreclr\vm\exceptionhandling.cpp @ 1066]
02 00007fff`ac3a2554 : 00000000`00000000 000000c3`c957e2f0 000000c3`c957e9b0 00000000`00000000 : ntdll!RtlpExecuteHandlerForException+0xf
03 00007fff`ac3f143e : 0001ffff`0000ffff 00000000`ffff0002 00000248`c0810330 ffff0001`00000000 : ntdll!RtlDispatchException+0x244
04 00007fff`4d514362 : 00000248`c0810330 00000000`00000000 00000248`c0810330 00000000`00000000 : ntdll!KiUserExceptionDispatch+0x2e
05 00007fff`4d516c2b : 00000248`c0810330 00000000`00000000 00000207`d198df40 00000000`00000000 : bassmix!BASS_Mixer_GetVersion+0x2a7a
06 00007ffe`f4474555 : 00000207`d198ddf8 00000000`00000000 00000000`00000000 00007fff`5017cbb0 : bassmix!BASS_Mixer_ChannelGetPosition+0x77
07 00000207`d198ddf8 : 00000000`00000000 00000000`00000000 00007fff`5017cbb0 000000c3`c957fa60 : 0x00007ffe`f4474555
08 00000000`00000000 : 00000000`00000000 00007fff`5017cbb0 000000c3`c957fa60 0000840b`6c3ef472 : 0x00000207`d198ddf8

Code: [Select]
2025-01-27 16:16:39 [verbose]: BASS version:           2.4.17.0
2025-01-27 16:16:39 [verbose]: BASS FX version:        2.4.12.6
2025-01-27 16:16:39 [verbose]: BASS MIX version:       2.4.12.0

If necessary, we can try to get the dump from the user to submit (likely via email).

Ian @ un4seen

  • Administrator
  • Posts: 26254
That callstack does show where the crash happened, but not why it happened. I'm not sure the dump file would reveal that, as the exception record appears to be from the .Net exception handler rather than the BASSmix crash location. But I have an idea what may have caused it (possibly a simultaneous BASS_ChannelSetPosition call on the same mixer in another thread?), and here's a BASSmix update for you to try:

   www.un4seen.com/stuff/bassmix.zip

Please let me know if you still get any BASS_Mixer_ChannelGetPosition crashes with that.