summaryrefslogtreecommitdiff
path: root/src/gtkutil.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2017-05-16 10:24:19 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2017-05-16 10:27:41 -0700
commit2e1bebe279b7108f74c3a1e7e30e8a43c2cfa31f (patch)
tree869b2d36a6a07dca857254202d620358c004489f /src/gtkutil.c
parent138c8256f41f242341c7d146c99f4e6fa267a638 (diff)
downloademacs-2e1bebe279b7108f74c3a1e7e30e8a43c2cfa31f.tar.gz
Merge with gnulib, pacifying GCC 7
This incorporates: 2017-05-16 manywarnings: update for GCC 7 2017-05-15 sys_select: Avoid "was expanded before it was required" * configure.ac (nw): Suppress GCC 7’s new -Wduplicated-branches and -Wformat-overflow=2 options, due to too many false alarms. * doc/misc/texinfo.tex, lib/strftime.c, m4/manywarnings.m4: Copy from gnulib. * m4/gnulib-comp.m4: Regenerate. * src/coding.c (decode_coding_iso_2022): Fix bug uncovered by -Wimplicit-fallthrough. * src/conf_post.h (FALLTHROUGH): New macro. Use it to mark all switch cases that fall through. * src/editfns.c (styled_format): Use !, not ~, on bool. * src/gtkutil.c (xg_check_special_colors): When using sprintf, don’t trust Gtk to output colors in [0, 1] range. (xg_update_scrollbar_pos): Avoid use of possibly-uninitialized bool; this bug was actually caught by Clang. * src/search.c (boyer_moore): Tell GCC that CHAR_BASE, if nonzero, must be a non-ASCII character. * src/xterm.c (x_draw_glyphless_glyph_string_foreground): Tell GCC that glyph->u.glyphless.ch must be a character.
Diffstat (limited to 'src/gtkutil.c')
-rw-r--r--src/gtkutil.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/gtkutil.c b/src/gtkutil.c
index 1b63293fe55..16eb284d7c7 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -554,10 +554,11 @@ xg_check_special_colors (struct frame *f,
else
gtk_style_context_get_background_color (gsty, state, &col);
- sprintf (buf, "rgb:%04x/%04x/%04x",
- (unsigned) (col.red * 65535),
- (unsigned) (col.green * 65535),
- (unsigned) (col.blue * 65535));
+ unsigned short
+ r = col.red * 65535,
+ g = col.green * 65535,
+ b = col.blue * 65535;
+ sprintf (buf, "rgb:%04x/%04x/%04x", r, g, b);
success_p = x_parse_color (f, buf, color) != 0;
#else
GtkStyle *gsty = gtk_widget_get_style (FRAME_GTK_WIDGET (f));
@@ -3856,7 +3857,6 @@ xg_update_scrollbar_pos (struct frame *f,
GtkWidget *wparent = gtk_widget_get_parent (wscroll);
gint msl;
int scale = xg_get_gdk_scale ();
- bool hidden;
top /= scale;
left /= scale;
@@ -3875,13 +3875,13 @@ xg_update_scrollbar_pos (struct frame *f,
/* Move and resize to new values. */
gtk_fixed_move (GTK_FIXED (wfixed), wparent, left, top);
gtk_widget_style_get (wscroll, "min-slider-length", &msl, NULL);
- if (msl > height)
+ bool hidden = height < msl;
+ if (hidden)
{
/* No room. Hide scroll bar as some themes output a warning if
the height is less than the min size. */
gtk_widget_hide (wparent);
gtk_widget_hide (wscroll);
- hidden = true;
}
else
{