projects
/
chise
/
xemacs-chise.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
(M-28841): Copied from Ideograph-R040-Roof.el.
[chise/xemacs-chise.git]
/
src
/
device-x.c
diff --git
a/src/device-x.c
b/src/device-x.c
index
a0586b6
..
4bfa4b0
100644
(file)
--- a/
src/device-x.c
+++ b/
src/device-x.c
@@
-168,6
+168,8
@@
get_x_display (Lisp_Object device)
/* initializing an X connection */
/************************************************************************/
/* initializing an X connection */
/************************************************************************/
+static struct device *device_being_initialized = NULL;
+
static void
allocate_x_device_struct (struct device *d)
{
static void
allocate_x_device_struct (struct device *d)
{
@@
-562,7
+564,9
@@
x_init_device (struct device *d, Lisp_Object props)
*/
slow_down_interrupts ();
/* May not be needed but XtOpenDisplay could not deal with signals here. */
*/
slow_down_interrupts ();
/* May not be needed but XtOpenDisplay could not deal with signals here. */
+ device_being_initialized = d;
dpy = DEVICE_X_DISPLAY (d) = XOpenDisplay (disp_name);
dpy = DEVICE_X_DISPLAY (d) = XOpenDisplay (disp_name);
+ device_being_initialized = NULL;
speed_up_interrupts ();
if (dpy == 0)
speed_up_interrupts ();
if (dpy == 0)
@@
-1116,6
+1120,9
@@
x_IO_error_handler (Display *disp)
Lisp_Object dev;
struct device *d = get_device_from_display_1 (disp);
Lisp_Object dev;
struct device *d = get_device_from_display_1 (disp);
+ if (!d)
+ d = device_being_initialized;
+
assert (d != NULL);
XSETDEVICE (dev, d);
assert (d != NULL);
XSETDEVICE (dev, d);
@@
-1434,13
+1441,13
@@
found. If the third arg is `string', a string is returned, and if it is
returned value is the list (t) for true, (nil) for false, and is nil to
mean ``unspecified''.
*/
returned value is the list (t) for true, (nil) for false, and is nil to
mean ``unspecified''.
*/
- (name, class, type, locale, device, no_error))
+ (name, class, type, locale, device, noerror))
{
char* name_string, *class_string;
char *raw_result;
XrmDatabase db;
Display *display;
{
char* name_string, *class_string;
char *raw_result;
XrmDatabase db;
Display *display;
- Error_behavior errb = decode_error_behavior_flag (no_error);
+ Error_behavior errb = decode_error_behavior_flag (noerror);
CHECK_STRING (name);
CHECK_STRING (class);
CHECK_STRING (name);
CHECK_STRING (class);