[gtk] css: Don't print numbers with exponent
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk] css: Don't print numbers with exponent
- Date: Wed, 29 May 2019 05:15:14 +0000 (UTC)
commit d71c196c5c128f4de514575c6e8b7aa9f6705909
Author: Benjamin Otte <otte redhat com>
Date: Wed May 29 06:48:03 2019 +0200
css: Don't print numbers with exponent
CSS does not do exponents, so printing numbers close to 0 as 1.234e-15
does not work.
Also up the accuracy to 17 digits because that's what everyone else
uses.
gdk/gdkrgba.c | 2 +-
gsk/gskrendernodeparser.c | 2 +-
gtk/css/gtkcsstokenizer.c | 2 +-
gtk/gtkcssdimensionvalue.c | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/gdk/gdkrgba.c b/gdk/gdkrgba.c
index b52e0254e6..a9b9365e0e 100644
--- a/gdk/gdkrgba.c
+++ b/gdk/gdkrgba.c
@@ -386,7 +386,7 @@ gdk_rgba_to_string (const GdkRGBA *rgba)
{
gchar alpha[G_ASCII_DTOSTR_BUF_SIZE];
- g_ascii_formatd (alpha, G_ASCII_DTOSTR_BUF_SIZE, "%g", CLAMP (rgba->alpha, 0, 1));
+ g_ascii_formatd (alpha, G_ASCII_DTOSTR_BUF_SIZE, "%.17f", CLAMP (rgba->alpha, 0, 1));
return g_strdup_printf ("rgba(%d,%d,%d,%s)",
(int)(0.5 + CLAMP (rgba->red, 0., 1.) * 255.),
diff --git a/gsk/gskrendernodeparser.c b/gsk/gskrendernodeparser.c
index 937e7d796f..428394bbb1 100644
--- a/gsk/gskrendernodeparser.c
+++ b/gsk/gskrendernodeparser.c
@@ -1510,7 +1510,7 @@ string_append_double (GString *string,
{
char buf[G_ASCII_DTOSTR_BUF_SIZE];
- g_ascii_formatd (buf, G_ASCII_DTOSTR_BUF_SIZE, "%g", d);
+ g_ascii_formatd (buf, G_ASCII_DTOSTR_BUF_SIZE, "%.17f", d);
g_string_append (string, buf);
}
diff --git a/gtk/css/gtkcsstokenizer.c b/gtk/css/gtkcsstokenizer.c
index c9a3856657..a9cab554a3 100644
--- a/gtk/css/gtkcsstokenizer.c
+++ b/gtk/css/gtkcsstokenizer.c
@@ -406,7 +406,7 @@ gtk_css_token_print (const GtkCssToken *token,
/* fall through */
case GTK_CSS_TOKEN_SIGNLESS_INTEGER_DIMENSION:
case GTK_CSS_TOKEN_DIMENSION:
- g_ascii_dtostr (buf, G_ASCII_DTOSTR_BUF_SIZE, token->dimension.value);
+ g_ascii_formatd (buf, G_ASCII_DTOSTR_BUF_SIZE, "%.17f", token->dimension.value);
g_string_append (string, buf);
append_ident (string, token->dimension.dimension);
break;
diff --git a/gtk/gtkcssdimensionvalue.c b/gtk/gtkcssdimensionvalue.c
index 4efdf13ef2..626c0ac2cb 100644
--- a/gtk/gtkcssdimensionvalue.c
+++ b/gtk/gtkcssdimensionvalue.c
@@ -198,7 +198,7 @@ gtk_css_value_dimension_print (const GtkCssValue *number,
g_string_append (string, "infinite");
else
{
- g_ascii_dtostr (buf, sizeof (buf), number->value);
+ g_ascii_formatd (buf, G_ASCII_DTOSTR_BUF_SIZE, "%.17f", number->value);
g_string_append (string, buf);
if (number->value != 0.0)
g_string_append (string, names[number->unit]);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]