Revision: 27860
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27860
Author:   vekoon
Date:     2010-03-30 12:13:55 +0200 (Tue, 30 Mar 2010)

Log Message:
-----------
Bugfix for [#21582] Adjusting material color (color picker) crashes

This fixes only the crash, which was due to buffer overrun for col Hex char 
buffer. It doesn't actually fix the real issue of overflowing the color values 
up to infinity.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/interface/interface_regions.c

Modified: trunk/blender/source/blender/editors/interface/interface_regions.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_regions.c  
2010-03-30 09:57:58 UTC (rev 27859)
+++ trunk/blender/source/blender/editors/interface/interface_regions.c  
2010-03-30 10:13:55 UTC (rev 27860)
@@ -1575,6 +1575,7 @@
                }
                else if(strcmp(bt->str, "Hex: ")==0) {
                        float rgb_gamma[3];
+                       double intpart;
                        char col[16];
                        
                        /* Hex code is assumed to be in sRGB space (coming from 
other applications, web, etc) */
@@ -1586,6 +1587,10 @@
                                linearrgb_to_srgb_v3_v3(rgb_gamma, rgb);
                        }
                        
+                       if (rgb_gamma[0] > 1.0f) rgb_gamma[0] = 
modf(rgb_gamma[0], &intpart);
+                       if (rgb_gamma[1] > 1.0f) rgb_gamma[1] = 
modf(rgb_gamma[1], &intpart);
+                       if (rgb_gamma[2] > 1.0f) rgb_gamma[2] = 
modf(rgb_gamma[2], &intpart);
+
                        sprintf(col, "%02X%02X%02X", (unsigned 
int)(rgb_gamma[0]*255.0), (unsigned int)(rgb_gamma[1]*255.0), (unsigned 
int)(rgb_gamma[2]*255.0));
                        
                        strcpy(bt->poin, col);


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to