Closed veksha closed 4 years ago
Thanks for reporting. I can reproduce this, but I have no Idea what to do about it. It seems to be the display driver killing foobar2000.
If anybody has any input on what can be done here, I'll be happy to hear.
I have a suggestion.
this is Api Monitor log after foobar2000 crashes:
I think you might try to catch those two errors before nvoglv32.dll (nvidia opengl driver) will fail. EnumDisplayDevicesA seems to be faster then EnumDisplayMonitors according to "Duration" column.
But it could be an overkill and affect FPS a little. if you feel like you can give it a try, go for it. :-) this "bug" is low priority, i think.
if EnumDisplayDevicesA will return FALSE just skip drawing of opengl. In theory this should fix crash. after that you can recreate opengl device context and continue drawing.
EnumDisplayDevices does not fail for me. But I think found another way to reliably handle display driver crashes. I'll implement it this week if I find the time.
I managed to get this to a place where foo_chronflow doesn't take down all of foobar anymore. Instead only the component crashes with a sensible error message. I tried to recreate the component window, but the graphics driver restart leaves my OpenGL helper GLFW in a broken state that it can't recover from.
Hello. Can I get new compiled version to try?
Sure thing, give this a try: foo_chronflow-graphiccrash.zip
@Chronial thank you. It does not load. Foobar2000 shows message: Failed to load DLL: foo_chronflow.dll Reason: The specified procedure was not found.
EDIT: sorry. it works now, for some reason.