Package: Grace
Version: 1:5.1.22-13

Hi Nicholas,

The recent source-hardening.diff patch appears to break SVG output
formatting.  Please see the original bug report in Ubuntu [1].

In particular, take a look at the output obtained when running:

gracebat -hardcopy -hdevice SVG

I have attached a pair of files "good.svg" (from unpatched grace
source), and "bad.svg" (with source-hardening.diff applied).  In the
"bad.svg" file, take a look at the end of the "<text
style="font-family:'" lines... the contents of the tag is malformed
e.g. "0.2)">0.2" on line 37 instead of just "0.2".

The relevant section of the source-hardening.diff patch is as follows.
 Perhaps it's just that the format string is incorrect?  At first
glance, it looks like it should be just "%s" rather than "%s%s"
because only one string is being passed to fprintf.

Thanks,


Alex

Index: grace-5.1.22/src/svgdrv.c
===================================================================
--- grace-5.1.22.orig/src/svgdrv.c      2012-05-17 19:00:52.144748609 -0700
+++ grace-5.1.22/src/svgdrv.c   2012-05-17 19:00:54.000000000 -0700
@@ -745,7 +745,7 @@
             -tm->cxy, -tm->cyy,
             scaleval(vp.x), scaleval(vp.y));

- fprintf(prstream, escape_specials((unsigned char *) s, len));
+ fprintf(prstream, "%s%s", escape_specials((unsigned char *) s, len));

     fprintf(prstream, "</text>\n");
 }

[1] https://bugs.launchpad.net/ubuntu/+source/grace/+bug/1068095

<<attachment: bad.svg>>

<<attachment: good.svg>>

Reply via email to