]> granicus.if.org Git - graphviz/commitdiff
Prevent values like -0 in xdot output
authorErwin Janssen <erwinjanssen@outlook.com>
Mon, 5 Dec 2016 01:10:22 +0000 (02:10 +0100)
committerErwin Janssen <erwinjanssen@outlook.com>
Mon, 5 Dec 2016 01:55:37 +0000 (02:55 +0100)
Two graphs in the shapes regression test reference files (invhouse and
invtrapezium) contained a -0 coordinate. The Linux build produced the same
results, but the Windows build didn't, causing the regression tests to
fail.
To prevent values like -0 in the xdot output, a comparison is added just
before formatting the number.

plugin/core/gvrender_core_dot.c
tests/regression_tests/shapes/reference/invhouse.xdot
tests/regression_tests/shapes/reference/invtrapezium.xdot

index 59407acf29abc83dd49c8faa952d243bad4651b0..5f4ffd694370cbaaaf083718bc2ca6d7f86dbdab 100644 (file)
@@ -140,6 +140,11 @@ static void xdot_trim_zeros (char* buf, int addSpace)
  */
 static void xdot_fmt_num (char* buf, double v)
 {
+    // Prevents values like -0
+    if (v > -0.00000001 && v < 0.00000001)
+    {
+        v = 0;
+    }
     sprintf(buf, "%.02f", v);
     xdot_trim_zeros (buf, 1);
 }
index de4ee07e8936d32fb6e10d378c8141ca1f5b502c..72e37cc8a6c88f9d6cdfa9528b7d36bac4e19d1a 100644 (file)
@@ -4,7 +4,7 @@ graph G {
                xdotversion=1.7
        ];
        node [label="\N"];
-       a        [_draw_="c 7 -#000000 p 5 0 12.44 27 -0 54 12.44 53.97 32.56 0.03 32.56 ",
+       a        [_draw_="c 7 -#000000 p 5 0 12.44 27 0 54 12.44 53.97 32.56 0.03 32.56 ",
                height=0.5,
                label="",
                pos="27,18",
index 519eb8dd62041d8732792c9f34bc1352d9f42615..cc1fa4d7510e4c5f122891ed3c8a27d8c3a0cd15 100644 (file)
@@ -4,7 +4,7 @@ graph G {
                xdotversion=1.7
        ];
        node [label="\N"];
-       a        [_draw_="c 7 -#000000 p 4 11.23 0 42.77 0 54 36 -0 36 ",
+       a        [_draw_="c 7 -#000000 p 4 11.23 0 42.77 0 54 36 0 36 ",
                height=0.5,
                label="",
                pos="27,18",