(x_window_to_frame): New arg DPYINFO. All callers changed.
authorKarl Heuer <kwzh@gnu.org>
Mon, 3 Apr 1995 23:34:26 +0000 (23:34 +0000)
committerKarl Heuer <kwzh@gnu.org>
Mon, 3 Apr 1995 23:34:26 +0000 (23:34 +0000)
(x_any_window_to_frame, x_top_window_to_frame): Likewise.

src/xfns.c

index 6f3be6d..88310ed 100644 (file)
@@ -263,7 +263,8 @@ check_x_display_info (frame)
 /* This function can be called during GC, so use GC_xxx type test macros.  */
 
 struct frame *
-x_window_to_frame (wdesc)
+x_window_to_frame (dpyinfo, wdesc)
+     struct x_display_info *dpyinfo;
      int wdesc;
 {
   Lisp_Object tail, frame;
@@ -275,6 +276,8 @@ x_window_to_frame (wdesc)
       if (!GC_FRAMEP (frame))
         continue;
       f = XFRAME (frame);
+      if (FRAME_X_DISPLAY_INFO (f) != dpyinfo)
+       continue;
 #ifdef USE_X_TOOLKIT
       if (f->display.nothing == 1) 
        return 0;
@@ -296,7 +299,8 @@ x_window_to_frame (wdesc)
    windows.  */
 
 struct frame *
-x_any_window_to_frame (wdesc)
+x_any_window_to_frame (dpyinfo, wdesc)
+     struct x_display_info *dpyinfo;
      int wdesc;
 {
   Lisp_Object tail, frame;
@@ -309,6 +313,8 @@ x_any_window_to_frame (wdesc)
       if (!GC_FRAMEP (frame))
         continue;
       f = XFRAME (frame);
+      if (FRAME_X_DISPLAY_INFO (f) != dpyinfo)
+       continue;
       if (f->display.nothing == 1) 
        return 0;
       x = f->display.x;
@@ -328,7 +334,8 @@ x_any_window_to_frame (wdesc)
    If WDESC is some other (smaller) window, we return 0.  */
 
 struct frame *
-x_top_window_to_frame (wdesc)
+x_top_window_to_frame (dpyinfo, wdesc)
+     struct x_display_info *dpyinfo;
      int wdesc;
 {
   Lisp_Object tail, frame;
@@ -341,6 +348,8 @@ x_top_window_to_frame (wdesc)
       if (!GC_FRAMEP (frame))
         continue;
       f = XFRAME (frame);
+      if (FRAME_X_DISPLAY_INFO (f) != dpyinfo)
+       continue;
       if (f->display.nothing == 1) 
        return 0;
       x = f->display.x;