diff options
Diffstat (limited to 'Build/source/utils/asymptote/runpicture.in')
-rw-r--r-- | Build/source/utils/asymptote/runpicture.in | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/runpicture.in b/Build/source/utils/asymptote/runpicture.in index 40209ed5860..e3896c4882d 100644 --- a/Build/source/utils/asymptote/runpicture.in +++ b/Build/source/utils/asymptote/runpicture.in @@ -576,7 +576,20 @@ void deconstruct(picture *f, picture *preamble=NULL, real magnification=1, b=group->bounds(); b *= magnification; + const char *oldlocale=setlocale(LC_NUMERIC,NULL); + bool override=oldlocale && strcmp(oldlocale,"C") != 0; + if(override) { + oldlocale=StrdupNoGC(oldlocale); + setlocale(LC_NUMERIC,"C"); + } + fprintf(pipeout,"%g %g %g %g\n",b.left,b.right,b.bottom,b.top); + + if(override) { + setlocale(LC_NUMERIC,oldlocale); + delete[] oldlocale; + } + fflush(pipeout); ++n; ++p; |