aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2014-10-08 13:39:45 +0300
committerEli Zaretskii2014-10-08 13:39:45 +0300
commitd295469e8e3aa3d3ee0543aea1a59aad63c467dc (patch)
tree015adad6168866f4198d7a0287a6469ca6658950 /src
parent23755ba32b9baeff4173e317624ceb89fc274468 (diff)
downloademacs-d295469e8e3aa3d3ee0543aea1a59aad63c467dc.tar.gz
emacs-d295469e8e3aa3d3ee0543aea1a59aad63c467dc.zip
Accept terminal devices on MS-Windows in APIs that accept frame or display.
src/w32fns.c (check_x_display_info): Accept terminal objects as argument, to follow what xfns.c does.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/w32fns.c21
2 files changed, 20 insertions, 6 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 1b77d1c9aa1..6acd46594b0 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12014-10-08 Eli Zaretskii <eliz@gnu.org>
2
3 * w32fns.c (check_x_display_info): Accept terminal objects as
4 argument, to follow what xfns.c does.
5
12014-10-07 Glenn Morris <rgm@gnu.org> 62014-10-07 Glenn Morris <rgm@gnu.org>
2 7
3 * Makefile.in ($(srcdir)/macuvs.h) 8 * Makefile.in ($(srcdir)/macuvs.h)
diff --git a/src/w32fns.c b/src/w32fns.c
index e61a438622f..bfa69fb61cd 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -263,9 +263,9 @@ static unsigned int sound_type = 0xFFFFFFFF;
263 the first display on the list. */ 263 the first display on the list. */
264 264
265struct w32_display_info * 265struct w32_display_info *
266check_x_display_info (Lisp_Object frame) 266check_x_display_info (Lisp_Object object)
267{ 267{
268 if (NILP (frame)) 268 if (NILP (object))
269 { 269 {
270 struct frame *sf = XFRAME (selected_frame); 270 struct frame *sf = XFRAME (selected_frame);
271 271
@@ -274,14 +274,23 @@ check_x_display_info (Lisp_Object frame)
274 else 274 else
275 return &one_w32_display_info; 275 return &one_w32_display_info;
276 } 276 }
277 else if (STRINGP (frame)) 277 else if (TERMINALP (object))
278 return x_display_info_for_name (frame); 278 {
279 struct terminal *t = get_terminal (object, 1);
280
281 if (t->type != output_w32)
282 error ("Terminal %d is not a W32 display", t->id);
283
284 return t->display_info.w32;
285 }
286 else if (STRINGP (object))
287 return x_display_info_for_name (object);
279 else 288 else
280 { 289 {
281 struct frame *f; 290 struct frame *f;
282 291
283 CHECK_LIVE_FRAME (frame); 292 CHECK_LIVE_FRAME (object);
284 f = XFRAME (frame); 293 f = XFRAME (object);
285 if (! FRAME_W32_P (f)) 294 if (! FRAME_W32_P (f))
286 error ("Non-W32 frame used"); 295 error ("Non-W32 frame used");
287 return FRAME_DISPLAY_INFO (f); 296 return FRAME_DISPLAY_INFO (f);