summaryrefslogtreecommitdiff
path: root/gdk
diff options
context:
space:
mode:
authorOwen Taylor <owt1@cornell.edu>1998-03-29 02:44:43 +0000
committerOwen Taylor <otaylor@src.gnome.org>1998-03-29 02:44:43 +0000
commit93e1585614b72c684b4fa302f6ae2e6d5605e02e (patch)
treef0040246098ac7e056fc75c824759d81027d9a37 /gdk
parent5b3cc69b4314a5206c0da6b16d34724ae0bba9ba (diff)
downloadgtk+-93e1585614b72c684b4fa302f6ae2e6d5605e02e.tar.gz
Disconnect from combo->entry, not combo. (From: Daniel Skarda
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu> * gtk/gtkcombo.c (gtk_combo_disable_activate): Disconnect from combo->entry, not combo. (From: Daniel Skarda <0rfelyus@atrey.karlin.mff.cuni.cz>) * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpm): Deal better with xpm's with bad colors in them. Plus, 3rd attempt to commit gtklabel changes
Diffstat (limited to 'gdk')
-rw-r--r--gdk/gdkpixmap.c10
-rw-r--r--gdk/x11/gdkpixmap-x11.c10
2 files changed, 16 insertions, 4 deletions
diff --git a/gdk/gdkpixmap.c b/gdk/gdkpixmap.c
index 6fbdada880..1ec059cda1 100644
--- a/gdk/gdkpixmap.c
+++ b/gdk/gdkpixmap.c
@@ -473,7 +473,7 @@ gdk_pixmap_colormap_create_from_xpm (GdkWindow *window,
color = NULL;
ns = 0;
- while (color == NULL)
+ while ((color == NULL) && (ns < num_cols))
{
if (strcmp (pixel_str, colors[ns].color_string) == 0)
color = &colors[ns];
@@ -481,6 +481,9 @@ gdk_pixmap_colormap_create_from_xpm (GdkWindow *window,
ns++;
}
+ if (!color) /* screwed up XPM file */
+ color = &colors[0];
+
gdk_image_put_pixel (image, xcnt, ycnt, color->color.pixel);
if (mask && color->transparent)
@@ -643,7 +646,7 @@ gdk_pixmap_colormap_create_from_xpm_d (GdkWindow *window,
color = NULL;
ns = 0;
- while (color == NULL)
+ while ((color == NULL) && (ns < num_cols))
{
if (strcmp (pixel_str, colors[ns].color_string) == 0)
color = &colors[ns];
@@ -651,6 +654,9 @@ gdk_pixmap_colormap_create_from_xpm_d (GdkWindow *window,
ns++;
}
+ if (!color) /* screwed up XPM file */
+ color = &colors[0];
+
gdk_image_put_pixel (image, xcnt, ycnt, color->color.pixel);
if (mask && color->transparent)
diff --git a/gdk/x11/gdkpixmap-x11.c b/gdk/x11/gdkpixmap-x11.c
index 6fbdada880..1ec059cda1 100644
--- a/gdk/x11/gdkpixmap-x11.c
+++ b/gdk/x11/gdkpixmap-x11.c
@@ -473,7 +473,7 @@ gdk_pixmap_colormap_create_from_xpm (GdkWindow *window,
color = NULL;
ns = 0;
- while (color == NULL)
+ while ((color == NULL) && (ns < num_cols))
{
if (strcmp (pixel_str, colors[ns].color_string) == 0)
color = &colors[ns];
@@ -481,6 +481,9 @@ gdk_pixmap_colormap_create_from_xpm (GdkWindow *window,
ns++;
}
+ if (!color) /* screwed up XPM file */
+ color = &colors[0];
+
gdk_image_put_pixel (image, xcnt, ycnt, color->color.pixel);
if (mask && color->transparent)
@@ -643,7 +646,7 @@ gdk_pixmap_colormap_create_from_xpm_d (GdkWindow *window,
color = NULL;
ns = 0;
- while (color == NULL)
+ while ((color == NULL) && (ns < num_cols))
{
if (strcmp (pixel_str, colors[ns].color_string) == 0)
color = &colors[ns];
@@ -651,6 +654,9 @@ gdk_pixmap_colormap_create_from_xpm_d (GdkWindow *window,
ns++;
}
+ if (!color) /* screwed up XPM file */
+ color = &colors[0];
+
gdk_image_put_pixel (image, xcnt, ycnt, color->color.pixel);
if (mask && color->transparent)