From: Karsten Ballüder <ballueder@usa.net>
Date: Fri, 7 May 1999 10:51:50 +0000 (+0000)
Subject: Crude hack to fix crash for 8bit displays. Seems to work fine. PLEASE CHECK
X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/3418cb8b1c4adb13895130de0a64d2046e0b6592

Crude hack to fix crash for 8bit displays. Seems to work fine. PLEASE CHECK


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---

diff --git a/src/gtk/app.cpp b/src/gtk/app.cpp
index d70f078447..38807e1eb9 100644
--- a/src/gtk/app.cpp
+++ b/src/gtk/app.cpp
@@ -288,18 +288,20 @@ bool wxApp::OnInitGui()
                 int bb = (b << 3) | (b >> 2);
 
                 GdkColor *colors = cmap->colors;
-                int max = 3 * 65536;
-                int index = -1;
+		if(colors)
+		{
+	                int max = 3 * 65536;
+                	int index = -1;
 
-                for (int i = 0; i < cmap->size; i++)
-                {
+                	for (int i = 0; i < cmap->size; i++)
+               	 {
                     int rdiff = ((rr << 8) - colors[i].red);
                     int gdiff = ((gg << 8) - colors[i].green);
                     int bdiff = ((bb << 8) - colors[i].blue);
                     int sum = ABS (rdiff) + ABS (gdiff) + ABS (bdiff);
                     if (sum < max) { index = i; max = sum; }
                 }
-
+		}
                 m_colorCube[ (r*1024) + (g*32) + b ] = index;
             }
         }
diff --git a/src/gtk1/app.cpp b/src/gtk1/app.cpp
index d70f078447..38807e1eb9 100644
--- a/src/gtk1/app.cpp
+++ b/src/gtk1/app.cpp
@@ -288,18 +288,20 @@ bool wxApp::OnInitGui()
                 int bb = (b << 3) | (b >> 2);
 
                 GdkColor *colors = cmap->colors;
-                int max = 3 * 65536;
-                int index = -1;
+		if(colors)
+		{
+	                int max = 3 * 65536;
+                	int index = -1;
 
-                for (int i = 0; i < cmap->size; i++)
-                {
+                	for (int i = 0; i < cmap->size; i++)
+               	 {
                     int rdiff = ((rr << 8) - colors[i].red);
                     int gdiff = ((gg << 8) - colors[i].green);
                     int bdiff = ((bb << 8) - colors[i].blue);
                     int sum = ABS (rdiff) + ABS (gdiff) + ABS (bdiff);
                     if (sum < max) { index = i; max = sum; }
                 }
-
+		}
                 m_colorCube[ (r*1024) + (g*32) + b ] = index;
             }
         }