diff --git a/lib/modules/Colors.pmod b/lib/modules/Colors.pmod index 9bac87bac5dca405afcba31aeb5fa22baa2d975f..58e95a291eed46c6174f280e10a155d0a092f2f2 100644 --- a/lib/modules/Colors.pmod +++ b/lib/modules/Colors.pmod @@ -472,6 +472,8 @@ array rgb_to_hsv(array|int ri, int|void gi, int|void bi) float h, s, v; if(arrayp(ri)) return rgb_to_hsv(@ri); + if((ri==gi) && (gi==bi)) return ({ 0, 0, ri }); // greyscale.. + r = (float)ri/255.0; g = (float)gi/255.0; b = (float)bi/255.0; max = MAX3(r,g,b); min = -(MAX3(-r,-g,-b));