From 82c8d562d6d5542c6dc47608d978fe49efdfe671 Mon Sep 17 00:00:00 2001 From: Tj Holowaychuk Date: Tue, 23 Nov 2010 14:58:35 -0800 Subject: [PATCH] fixed rgba_create() --- src/CanvasRenderingContext2d.cc | 2 +- src/color.cc | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/CanvasRenderingContext2d.cc b/src/CanvasRenderingContext2d.cc index ece8639..e142141 100644 --- a/src/CanvasRenderingContext2d.cc +++ b/src/CanvasRenderingContext2d.cc @@ -1018,7 +1018,7 @@ Context2d::SetFillColor(const Arguments &args) { HandleScope scope; if (!args[0]->IsString()) return Undefined(); String::AsciiValue str(args[0]); - uint32_t color = rgba_from_string(*str); + rgba_t color = rgba_create(rgba_from_string(*str)); Context2d *context = ObjectWrap::Unwrap(args.This()); context->state->fillPattern = NULL; //RGBA(context->state->fill,r,g,b,a); diff --git a/src/color.cc b/src/color.cc index 7865c6c..9a6a038 100644 --- a/src/color.cc +++ b/src/color.cc @@ -228,9 +228,9 @@ rgba_t rgba_create(uint32_t rgba) { rgba_t color; color.r = rgba >> 24; - color.g = rgba >> 16; - color.b = rgba >> 8; - color.a = rgba; + color.g = (rgba & 0x00ff0000) >> 16; + color.b = (rgba & 0x0000ff00) >> 8; + color.a = rgba & 0xff; return color; }