@Majestyk,
you click on the eye icon ! when you write a message or you can use [.spoiler]Your pasted log here[./spoiler] without the red dots like this:
These are the crash logs but they won't help us, explanation is down below.
Illegal operation:
Code: 6F8E1DC8h, flags: 00000001h, address: 77639862h
Additional parameters: 00000016h
Call path:
user_interface::shutdown
Stack dump analysis:
Address: 6F8E1DC8h (dxgi+21DC8h), symbol: "CreateDXGIFactory1" (+27A8h)
Address: 77639862h (KERNELBASE+129862h), symbol: "RaiseException" (+62h)
Address: 777E5595h (ntdll+45595h), symbol: "RtlAllocateHeap" (+2D5h)
Address: 777FCCA9h (ntdll+5CCA9h), symbol: "RtlRestoreLastWin32Error" (+39h)
Address: 7762128Bh (KERNELBASE+11128Bh), symbol: "FlsGetValue" (+1Bh)
Address: 00295CB0h (foobar2000+E5CB0h)
Address: 00295CCCh (foobar2000+E5CCCh)
Address: 6F8E1DC8h (dxgi+21DC8h), symbol: "CreateDXGIFactory1" (+27A8h)
Address: 76A5D8CFh (ucrtbase+9D8CFh), symbol: "raise" (+1BFh)
Address: 724DCD58h (foo_spider_monkey_panel+20CD58h), symbol: "CreateLexer" (+BE498h)
Illegal operation:
Code: 6F8E1DC8h, flags: 00000001h, address: 77639862h
Additional parameters: 00000016h
Call path:
user_interface::shutdown
Stack dump analysis:
Address: 6F8E1DC8h (dcomp+1DC8h), symbol: "Ordinal1984" (+1DC8h)
Address: 77639862h (KERNELBASE+129862h), symbol: "RaiseException" (+62h)
Address: 752066F3h (guard32+166F3h), symbol: "Exported" (+C123h)
Address: 777FCCA9h (ntdll+5CCA9h), symbol: "RtlRestoreLastWin32Error" (+39h)
Address: 7762128Bh (KERNELBASE+11128Bh), symbol: "FlsGetValue" (+1Bh)
Address: 00295CB0h (foobar2000+E5CB0h)
Address: 00295CCCh (foobar2000+E5CCCh)
Address: 6F8E1DC8h (dcomp+1DC8h), symbol: "Ordinal1984" (+1DC8h)
Address: 76A5D8CFh (ucrtbase+9D8CFh), symbol: "raise" (+1BFh)
Address: 7257CD58h (foo_spider_monkey_panel+20CD58h), symbol: "CreateLexer" (+BE498h)
Address: 00295CB0h (foobar2000+E5CB0h)
Address: 76AD131Ch (ucrtbase+11131Ch), symbol: "remainderf" (+14B3Ch)
Address: 76A22080h (ucrtbase+62080h), symbol: "crt_debugger_hook" (+C0h)
Address: 76A5EDC2h (ucrtbase+9EDC2h), symbol: "abort" (+32h)
Address: 76A5E17Bh (ucrtbase+9E17Bh), symbol: "terminate" (+3Bh)
Address: 7257CD58h (foo_spider_monkey_panel+20CD58h), symbol: "CreateLexer" (+BE498h)
Illegal operation:
Code: 6F8E1DC8h, flags: 00000001h, address: 77639862h
Additional parameters: 00000016h
Last win32 error: 126
Call path:
user_interface::shutdown
Address: 6F8E1DC8h (InputHost+91DC8h), symbol: "CreateInputSystemClientConnection" (+61678h)
Address: 77639862h (KERNELBASE+129862h), symbol: "RaiseException" (+62h)
Address: 6DEEF9DFh (mshtml+50F9DFh), symbol: "DllCanUnloadNow" (+16F9Fh)
Address: 777FCCA9h (ntdll+5CCA9h), symbol: "RtlRestoreLastWin32Error" (+39h)
Address: 7762128Bh (KERNELBASE+11128Bh), symbol: "FlsGetValue" (+1Bh)
Address: 00295CB0h (foobar2000+E5CB0h)
Address: 6FD5F7A9h (AUDIOSES+EF7A9h), symbol: "Ordinal2" (+2D749h)
Address: 00295CCCh (foobar2000+E5CCCh)
Address: 6F8E1DC8h (InputHost+91DC8h), symbol: "CreateInputSystemClientConnection" (+61678h)
Address: 76A5D8CFh (ucrtbase+9D8CFh), symbol: "raise" (+1BFh)
Address: 7193CD58h (foo_spider_monkey_panel+20CD58h), symbol: "CreateLexer" (+BE498h)
---
Yesterday I thought that the AllMusic fetching wasn't the actual cause of this problem, but it is indeed triggered by that.
When HTTP requests for AllMusic are initiated, fetching text/images and you exit foobar during this process,
foobar threads are still active and not properly disposed of, causing foobar to crash when an exit is attempted.
This does not work and you can reproduce the crash, if the artist has AllMusic review and it's not cached:
const checkResponse = setInterval(() => {
if (window.IsUnload) {
clearTimeout(timer);
clearInterval(checkResponse);
xmlhttp.Abort();
bioOnStateChange.call(null, resolve, reject, () => void(0));
console.log('EXITING');
fb.Exit();
return;
}
try {xmlhttp.Status && xmlhttp.ResponseText} catch(e) {return;}
clearTimeout(timer);
clearInterval(checkResponse);
bioOnStateChange.call(xmlhttp, resolve, reject, func);
setTimeout(() => {
on_script_unload();
}, 500);
}, 30);
Not sure yet how to prevent this, but foobar or SMP should kill all internal foobar processes immediately or wait until all processes have finished when the user closes foobar, then there won't be any crash...
-TT