+2011-07-13 Johan Bockgård <bojohan@gnu.org>
+
+ Fix execution of x selection hooks.
+ * xselect.c (Qx_lost_selection_functions)
+ (Qx_sent_selection_functions): New vars.
+ (syms_of_xselect): DEFSYM them.
+ (x_handle_selection_request): Pass Qx_sent_selection_functions
+ rather than Vx_sent_selection_functions to Frun_hook_with_args.
+ (x_handle_selection_clear,x_clear_frame_selections):
+ Pass Qx_lost_selection_functions rather than
+ Vx_lost_selection_functions to Frun_hook_with_args.
+
2011-07-13 Paul Eggert <eggert@cs.ucla.edu>
* buffer.c (Fget_buffer_create): Initialized inhibit_shrinking.
static Lisp_Object Qcompound_text_with_extensions;
static Lisp_Object Qforeign_selection;
+static Lisp_Object Qx_lost_selection_functions, Qx_sent_selection_functions;
/* If this is a smaller number than the max-request-size of the display,
emacs will use INCR selection transfer when the selection is larger
&& !EQ (Vx_sent_selection_functions, Qunbound))
{
Lisp_Object args[4];
- args[0] = Vx_sent_selection_functions;
+ args[0] = Qx_sent_selection_functions;
args[1] = selection_symbol;
args[2] = target_symbol;
args[3] = success ? Qt : Qnil;
/* Run the `x-lost-selection-functions' abnormal hook. */
{
Lisp_Object args[2];
- args[0] = Vx_lost_selection_functions;
+ args[0] = Qx_lost_selection_functions;
args[1] = selection_symbol;
Frun_hook_with_args (2, args);
}
{
/* Run the `x-lost-selection-functions' abnormal hook. */
Lisp_Object args[2];
- args[0] = Vx_lost_selection_functions;
+ args[0] = Qx_lost_selection_functions;
args[1] = Fcar (Fcar (t->Vselection_alist));
Frun_hook_with_args (2, args);
&& EQ (frame, XCAR (XCDR (XCDR (XCDR (XCAR (XCDR (rest))))))))
{
Lisp_Object args[2];
- args[0] = Vx_lost_selection_functions;
+ args[0] = Qx_lost_selection_functions;
args[1] = XCAR (XCAR (XCDR (rest)));
Frun_hook_with_args (2, args);
XSETCDR (rest, XCDR (XCDR (rest)));
DEFSYM (QNULL, "NULL");
DEFSYM (Qcompound_text_with_extensions, "compound-text-with-extensions");
DEFSYM (Qforeign_selection, "foreign-selection");
+ DEFSYM (Qx_lost_selection_functions, "x-lost-selection-functions");
+ DEFSYM (Qx_sent_selection_functions, "x-sent-selection-functions");
}