summaryrefslogtreecommitdiff
path: root/gdk/gdkrgba.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2010-10-25 12:10:48 -0400
committerMatthias Clasen <mclasen@redhat.com>2010-10-25 12:10:48 -0400
commit377e7179b8a5fb5036b0015424a08707457ab75c (patch)
tree52eb14c28a8913b6796aa789b494aa4be581e150 /gdk/gdkrgba.c
parent366a37d8c1a9ee540c0090b6fef9c4cc3b8807c6 (diff)
downloadgtk+-377e7179b8a5fb5036b0015424a08707457ab75c.tar.gz
Add tests for GdkRGBA serialization
In particular, test that serialization is not dependent on the locale.
Diffstat (limited to 'gdk/gdkrgba.c')
-rw-r--r--gdk/gdkrgba.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/gdk/gdkrgba.c b/gdk/gdkrgba.c
index 68f602d71a..e26de9806e 100644
--- a/gdk/gdkrgba.c
+++ b/gdk/gdkrgba.c
@@ -269,9 +269,15 @@ gdk_rgba_equal (gconstpointer p1,
gchar *
gdk_rgba_to_string (GdkRGBA *rgba)
{
- return g_strdup_printf ("rgba(%f,%f,%f,%f)",
- CLAMP (rgba->red, 0, 1),
- CLAMP (rgba->green, 0, 1),
- CLAMP (rgba->blue, 0, 1),
- CLAMP (rgba->alpha, 0, 1));
+ gchar red[G_ASCII_DTOSTR_BUF_SIZE];
+ gchar green[G_ASCII_DTOSTR_BUF_SIZE];
+ gchar blue[G_ASCII_DTOSTR_BUF_SIZE];
+ gchar alpha[G_ASCII_DTOSTR_BUF_SIZE];
+
+ g_ascii_dtostr (red, G_ASCII_DTOSTR_BUF_SIZE, CLAMP (rgba->red, 0, 1));
+ g_ascii_dtostr (green, G_ASCII_DTOSTR_BUF_SIZE, CLAMP (rgba->green, 0, 1));
+ g_ascii_dtostr (blue, G_ASCII_DTOSTR_BUF_SIZE, CLAMP (rgba->blue, 0, 1));
+ g_ascii_dtostr (alpha, G_ASCII_DTOSTR_BUF_SIZE, CLAMP (rgba->alpha, 0, 1));
+
+ return g_strdup_printf ("rgba(%s,%s,%s,%s)", red, green, blue, alpha);
}