aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c
diff options
context:
space:
mode:
authorjave2014-12-31 12:24:10 +0100
committerjave2014-12-31 12:24:10 +0100
commitbaba9e039136e183e055169ddd7ca1e983fc734f (patch)
tree9168fb077980351a25ea3a112f2abd105a11099a /src/xterm.c
parent4105b6a93047045553e10795742a808b805c85b7 (diff)
parent25346768fac53687c97c213fb99ff18fa805b073 (diff)
downloademacs-baba9e039136e183e055169ddd7ca1e983fc734f.tar.gz
emacs-baba9e039136e183e055169ddd7ca1e983fc734f.zip
merge upstream
Diffstat (limited to 'src/xterm.c')
-rw-r--r--src/xterm.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/src/xterm.c b/src/xterm.c
index f3b9cbe9a0f..c9b9e84b5e8 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -9244,13 +9244,9 @@ do_ewmh_fullscreen (struct frame *f)
9244 switch (f->want_fullscreen) 9244 switch (f->want_fullscreen)
9245 { 9245 {
9246 case FULLSCREEN_BOTH: 9246 case FULLSCREEN_BOTH:
9247 if (cur == FULLSCREEN_WIDTH || cur == FULLSCREEN_MAXIMIZED 9247 if (cur != FULLSCREEN_BOTH)
9248 || cur == FULLSCREEN_HEIGHT) 9248 set_wm_state (frame, true, dpyinfo->Xatom_net_wm_state_fullscreen,
9249 set_wm_state (frame, false, 9249 None);
9250 dpyinfo->Xatom_net_wm_state_maximized_horz,
9251 dpyinfo->Xatom_net_wm_state_maximized_vert);
9252 set_wm_state (frame, true,
9253 dpyinfo->Xatom_net_wm_state_fullscreen, None);
9254 break; 9250 break;
9255 case FULLSCREEN_WIDTH: 9251 case FULLSCREEN_WIDTH:
9256 if (cur == FULLSCREEN_BOTH || cur == FULLSCREEN_HEIGHT 9252 if (cur == FULLSCREEN_BOTH || cur == FULLSCREEN_HEIGHT
@@ -10515,8 +10511,9 @@ static bool
10515same_x_server (const char *name1, const char *name2) 10511same_x_server (const char *name1, const char *name2)
10516{ 10512{
10517 bool seen_colon = false; 10513 bool seen_colon = false;
10518 const char *system_name = SSDATA (Vsystem_name); 10514 Lisp_Object sysname = Fsystem_name ();
10519 ptrdiff_t system_name_length = SBYTES (Vsystem_name); 10515 const char *system_name = SSDATA (sysname);
10516 ptrdiff_t system_name_length = SBYTES (sysname);
10520 ptrdiff_t length_until_period = 0; 10517 ptrdiff_t length_until_period = 0;
10521 10518
10522 while (system_name[length_until_period] != 0 10519 while (system_name[length_until_period] != 0
@@ -10912,14 +10909,15 @@ x_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name)
10912#endif 10909#endif
10913 10910
10914 lim = min (PTRDIFF_MAX, SIZE_MAX) - sizeof "@"; 10911 lim = min (PTRDIFF_MAX, SIZE_MAX) - sizeof "@";
10915 if (lim - SBYTES (Vinvocation_name) < SBYTES (Vsystem_name)) 10912 Lisp_Object system_name = Fsystem_name ();
10913 if (lim - SBYTES (Vinvocation_name) < SBYTES (system_name))
10916 memory_full (SIZE_MAX); 10914 memory_full (SIZE_MAX);
10917 dpyinfo->x_id = ++x_display_id; 10915 dpyinfo->x_id = ++x_display_id;
10918 dpyinfo->x_id_name = xmalloc (SBYTES (Vinvocation_name) 10916 dpyinfo->x_id_name = xmalloc (SBYTES (Vinvocation_name)
10919 + SBYTES (Vsystem_name) + 2); 10917 + SBYTES (system_name) + 2);
10920 char *nametail = lispstpcpy (dpyinfo->x_id_name, Vinvocation_name); 10918 char *nametail = lispstpcpy (dpyinfo->x_id_name, Vinvocation_name);
10921 *nametail++ = '@'; 10919 *nametail++ = '@';
10922 lispstpcpy (nametail, Vsystem_name); 10920 lispstpcpy (nametail, system_name);
10923 10921
10924 /* Figure out which modifier bits mean what. */ 10922 /* Figure out which modifier bits mean what. */
10925 x_find_modifier_meanings (dpyinfo); 10923 x_find_modifier_meanings (dpyinfo);