(x_get_foreign_selection): Use x_catch_errors.
(x_handle_selection_clear): Call prepare_menu_bars.
This commit is contained in:
@@ -741,6 +741,7 @@ x_handle_selection_clear (event)
|
||||
{
|
||||
for (; CONSP (rest); rest = Fcdr (rest))
|
||||
call1 (Fcar (rest), selection_symbol);
|
||||
prepare_menu_bars ();
|
||||
redisplay_preserve_echo_area ();
|
||||
}
|
||||
}
|
||||
@@ -983,6 +984,7 @@ x_get_foreign_selection (selection_symbol, target_type)
|
||||
type_atom = symbol_to_x_atom (display, target_type);
|
||||
|
||||
BLOCK_INPUT;
|
||||
x_catch_errors ();
|
||||
XConvertSelection (display, selection_atom, type_atom, target_property,
|
||||
requestor_window, requestor_time);
|
||||
XFlushQueue ();
|
||||
@@ -998,6 +1000,11 @@ x_get_foreign_selection (selection_symbol, target_type)
|
||||
usecs = (x_selection_timeout % 1000) * 1000;
|
||||
wait_reading_process_input (secs, usecs, reading_selection_reply, 0);
|
||||
|
||||
BLOCK_INPUT;
|
||||
x_check_errors ("Cannot get selection: %s");
|
||||
x_uncatch_errors ();
|
||||
UNBLOCK_INPUT;
|
||||
|
||||
if (NILP (XCONS (reading_selection_reply)->car))
|
||||
error ("timed out waiting for reply from selection owner");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user