Fix T69935: Silence Win32 OS Error Dialogs
Call SetErrorMode() at startup to prevent error mode dialogs. Differential Revision: https://developer.blender.org/D5941 Reviewed by Brecht Van Lommel
This commit is contained in:
@@ -230,14 +230,8 @@ int BLI_exists(const char *name)
|
|||||||
tmp_16[3] = L'\0';
|
tmp_16[3] = L'\0';
|
||||||
}
|
}
|
||||||
|
|
||||||
/* change error mode so user does not get a "no disk in drive" popup
|
|
||||||
* when looking for a file on an empty CD/DVD drive */
|
|
||||||
old_error_mode = SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOOPENFILEERRORBOX);
|
|
||||||
|
|
||||||
res = BLI_wstat(tmp_16, &st);
|
res = BLI_wstat(tmp_16, &st);
|
||||||
|
|
||||||
SetErrorMode(old_error_mode);
|
|
||||||
|
|
||||||
free(tmp_16);
|
free(tmp_16);
|
||||||
if (res == -1) {
|
if (res == -1) {
|
||||||
return (0);
|
return (0);
|
||||||
|
@@ -301,6 +301,12 @@ void main_signal_setup(void)
|
|||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# ifdef WIN32
|
||||||
|
/* Prevent any error mode dialogs from hanging the application. */
|
||||||
|
SetErrorMode(SEM_FAILCRITICALERRORS | SEM_NOALIGNMENTFAULTEXCEPT | SEM_NOGPFAULTERRORBOX |
|
||||||
|
SEM_NOOPENFILEERRORBOX);
|
||||||
|
# endif
|
||||||
|
|
||||||
if (app_state.signal.use_abort_handler) {
|
if (app_state.signal.use_abort_handler) {
|
||||||
signal(SIGABRT, sig_handle_abort);
|
signal(SIGABRT, sig_handle_abort);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user