cplussharp / graph-studio-next

GraphStudioNext is a tool for developers to build and test DirectShow Graphs
355 stars 94 forks source link

Graph Studio Next 32bit version running on 64bit OS silently ignores exceptions that happen from user mode callbacks (e.g. key press handlers) #269

Closed mikecopperwhite closed 9 years ago

mikecopperwhite commented 9 years ago

http://blog.paulbetts.org/index.php/2010/07/20/the-case-of-the-disappearing-onload-exception-user-mode-callback-exceptions-in-x64/

https://support.microsoft.com/en-us/kb/976038

This Windows issue affects 32bit versions of the program running on 64bit versions Windows 7 and Vista. 32bit versions of Windows and/or 64bit versions of the program are apparently not affected.

For compatibility Windows will silently swallow exceptions (crashes) that happen from a user mode callback (e.g. a key press handler) but won't do this if the same code is reached from another route (e.g. a right click context menu). This leaves the program in an uncertain state with no indication that a problem has occured.

I think Graph Studio Next should call the new API (if the API is present) on startup that disables this horrible behaviour and allows these exceptions to happen. IMO Graph Studio next is a developer tool and should not be masking out filter crashes. If really desirable we could make this a selectable option menu item but I think it should be default to allow exceptions.

roman380 commented 9 years ago

I agree, a dev tool does not need to swallow.