+2000-06-18 Ken Raeburn <raeburn@gnu.org>
+
+ * charset.c (update_charset_table): Use XINT on "iso_final_char"
+ when treating it as an integer.
+
+ * coding.h (encode_coding_string): Declare.
+
+ * keyboard.c (read_key_sequence): Use XINT on "pos" when treating
+ it as an integer.
+
+ * keymap.c (Fwhere_is_internal): Rename argument "keymap" to
+ "xkeymap" to avoid shadowing the "enum map_type" value that needs
+ to be passed to get_local_map.
+
+ * sound.c (Fplay_sound): Don't call make_number on
+ Frun_hook_with_args count argument.
+
+ * xterm.c (x_send_scroll_bar_event): Fudge lisp object/integer
+ for lisp objects in X event structure data field, when lisp
+ objects are represented with unions.
+ (x_scroll_bar_to_input_event): Ditto.
+
2000-06-16 Ken Raeburn <raeburn@gnu.org>
* xdisp.c (decode_mode_spec): In "no_value" case, do NUL
}
/* Update table iso_charset_table. */
- if (iso_final_char >= 0
+ if (XINT (iso_final_char) >= 0
&& ISO_CHARSET_TABLE (dimension, chars, iso_final_char) < 0)
ISO_CHARSET_TABLE (dimension, chars, iso_final_char) = charset;
}
extern Lisp_Object code_convert_string_norecord P_ ((Lisp_Object, Lisp_Object,
int));
extern void setup_raw_text_coding_system P_ ((struct coding_system *));
+extern Lisp_Object encode_coding_string P_ ((Lisp_Object,
+ struct coding_system *, int));
extern Lisp_Object Qcoding_system, Qeol_type, Qcoding_category_index;
extern Lisp_Object Qraw_text, Qemacs_mule;
extern Lisp_Object Qbuffer_file_coding_system;
string = POSN_STRING (EVENT_START (key));
pos = XCDR (string);
string = XCAR (string);
- if (pos >= 0 && pos < XSTRING (string)->size)
+ if (XINT (pos) >= 0
+ && XINT (pos) < XSTRING (string)->size)
{
map = Fget_text_property (pos, Qlocal_map, string);
if (!NILP (map))
args[0] = Qplay_sound_functions;
args[1] = sound;
- Frun_hook_with_args (make_number (2), args);
+ Frun_hook_with_args (2, args);
/* There is only one type of device we currently support, the VOX
sound driver. Set up the device interface functions for that
ev->display = FRAME_X_DISPLAY (f);
ev->window = FRAME_X_WINDOW (f);
ev->format = 32;
- ev->data.l[0] = (long) window;
+ ev->data.l[0] = (long) XFASTINT (window);
ev->data.l[1] = (long) part;
ev->data.l[2] = (long) 0;
ev->data.l[3] = (long) portion;
struct input_event *ievent;
{
XClientMessageEvent *ev = (XClientMessageEvent *) event;
- Lisp_Object window = (Lisp_Object) ev->data.l[0];
- struct frame *f = XFRAME (XWINDOW (window)->frame);
+ Lisp_Object window;
+ struct frame *f;
+
+ XSETFASTINT (window, ev->data.l[0]);
+ f = XFRAME (XWINDOW (window)->frame);
ievent->kind = scroll_bar_click;
ievent->frame_or_window = window;