# HG changeset patch # User Jason Rumney # Date 1118444608 0 # Node ID 431c88e4a3a2641c31459d96f832e8fab8461c7e # Parent 23220d47d573d09bd5253cd9b7968403b07bcbe9 (Fx_file_dialog): Unblock input before falling back to minibuffer. diff -r 23220d47d573 -r 431c88e4a3a2 src/macfns.c --- a/src/macfns.c Fri Jun 10 22:59:17 2005 +0000 +++ b/src/macfns.c Fri Jun 10 23:03:28 2005 +0000 @@ -4375,14 +4375,15 @@ break; } NavDialogDispose(dialogRef); + UNBLOCK_INPUT; } else { + UNBLOCK_INPUT; /* Fall back on minibuffer if there was a problem */ file = Fcompleting_read (prompt, intern ("read-file-name-internal"), dir, mustmatch, dir, Qfile_name_history, default_filename, Qnil); } - UNBLOCK_INPUT; } UNGCPRO; diff -r 23220d47d573 -r 431c88e4a3a2 src/w32fns.c --- a/src/w32fns.c Fri Jun 10 22:59:17 2005 +0000 +++ b/src/w32fns.c Fri Jun 10 23:03:28 2005 +0000 @@ -7808,6 +7808,7 @@ { OPENFILENAME file_details; + BOOL file_opened = FALSE; /* Prevent redisplay. */ specbind (Qinhibit_redisplay, Qt); @@ -7836,7 +7837,11 @@ file_details.lpfnHook = (LPOFNHOOKPROC) file_dialog_callback; - if (GetOpenFileName (&file_details)) + file_opened = GetOpenFileName (&file_details); + + UNBLOCK_INPUT; + + if (file_opened) { dostounix_filename (filename); if (file_details.nFilterIndex == 2) @@ -7857,7 +7862,6 @@ dir, mustmatch, dir, Qfile_name_history, default_filename, Qnil); - UNBLOCK_INPUT; file = unbind_to (count, file); }