[patch][gtk-960606] gdkfont sign-extension bug fix
- From: David Mosberger-Tang <davidm azstarnet com>
- To: petm xcf berkeley edu, gtk-list redhat com
- Subject: [patch][gtk-960606] gdkfont sign-extension bug fix
- Date: Sun, 8 Jun 1997 11:57:34 -0700
Here is a small fix for a sign-extension bug in gdkfont. On
Linux/Alpha it had the effect that gimp would crash if ~/.gimp did not
exist.
The patch below fixes the immediate problem, but looking at the code,
I do wonder whether the proper fix wouldn't be to make gchar an
unsigned type.
--david
--- gtk+/gdk/gdkfont.c~ Wed Feb 26 05:00:43 1997
+++ gtk+/gdk/gdkfont.c Sun Jun 8 11:46:40 1997
@@ -142,6 +142,7 @@
{
GdkFontPrivate *private;
XCharStruct *chars;
+ guint ch = character & 0xff; /* get rid of sign-extension */
gint width;
g_return_val_if_fail (font != NULL, -1);
@@ -150,12 +151,12 @@
if ((private->xfont->min_byte1 == 0) &&
(private->xfont->max_byte1 == 0) &&
- (character >= private->xfont->min_char_or_byte2) &&
- (character <= private->xfont->max_char_or_byte2))
+ (ch >= private->xfont->min_char_or_byte2) &&
+ (ch <= private->xfont->max_char_or_byte2))
{
chars = private->xfont->per_char;
if (chars)
- width = chars[character - private->xfont->min_char_or_byte2].width;
+ width = chars[ch - private->xfont->min_char_or_byte2].width;
else
width = private->xfont->min_bounds.width;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]