The following patch fixes the issue where using a named color with an
explicit alpha clobbers the alpha in the original color in
Shoes::COLORS.
-mental
diff --git a/shoes/ruby.c b/shoes/ruby.c
index 484d37f..6dd16d8 100644
--- a/shoes/ruby.c
+++ b/shoes/ruby.c
@@ -1506,7 +1506,7 @@ shoes_color_method_missing(int argc, VALUE *argv, VALUE
self)
{
shoes_color *color;
Data_Get_Struct(c, shoes_color, color);
- color->a = NUM2RGBINT(alpha);
+ c = shoes_color_new(color->r, color->g, color->b, NUM2RGBINT(alpha));
}
return c;