diff options
author | Eli Zaretskii <eliz@gnu.org> | 2014-10-08 13:39:45 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2014-10-08 13:39:45 +0300 |
commit | d295469e8e3aa3d3ee0543aea1a59aad63c467dc (patch) | |
tree | 015adad6168866f4198d7a0287a6469ca6658950 | |
parent | 23755ba32b9baeff4173e317624ceb89fc274468 (diff) | |
download | emacs-d295469e8e3aa3d3ee0543aea1a59aad63c467dc.tar.gz |
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.
-rw-r--r-- | src/ChangeLog | 5 | ||||
-rw-r--r-- | src/w32fns.c | 21 |
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 @@ +2014-10-08 Eli Zaretskii <eliz@gnu.org> + + * w32fns.c (check_x_display_info): Accept terminal objects as + argument, to follow what xfns.c does. + 2014-10-07 Glenn Morris <rgm@gnu.org> * 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; the first display on the list. */ struct w32_display_info * -check_x_display_info (Lisp_Object frame) +check_x_display_info (Lisp_Object object) { - if (NILP (frame)) + if (NILP (object)) { struct frame *sf = XFRAME (selected_frame); @@ -274,14 +274,23 @@ check_x_display_info (Lisp_Object frame) else return &one_w32_display_info; } - else if (STRINGP (frame)) - return x_display_info_for_name (frame); + else if (TERMINALP (object)) + { + struct terminal *t = get_terminal (object, 1); + + if (t->type != output_w32) + error ("Terminal %d is not a W32 display", t->id); + + return t->display_info.w32; + } + else if (STRINGP (object)) + return x_display_info_for_name (object); else { struct frame *f; - CHECK_LIVE_FRAME (frame); - f = XFRAME (frame); + CHECK_LIVE_FRAME (object); + f = XFRAME (object); if (! FRAME_W32_P (f)) error ("Non-W32 frame used"); return FRAME_DISPLAY_INFO (f); |