<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Dec 3, 2014 at 10:17 AM, Wojciech A. Koszek <span dir="ltr"><<a href="mailto:wkoszek@freebsd.org" target="_blank">wkoszek@freebsd.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hello,<br>
<br>
I wanted to document my solution to a problem from the ``Cracking the coding<br>
interview'' on measuring angles between clock's pointers. I have 1 figure<br>
for this for now, and METAPOST crashes when I try to compile my image.<br>
<br>
I figured it works fine with prologues=1 or 2 for both MPS and SVG output.<br>
<br>
For prologues=3 it works fine with MPS, but gets a SIGSEGV with SVG as an<br>
output.<br>
<br>
SVG<br>
<br>
Will finish OK:<br>
<br>
        wget -O <a href="http://bug_2.mp" target="_blank">bug_2.mp</a> <a href="http://pastebin.com/5irnjVHB" target="_blank">http://pastebin.com/5irnjVHB</a><br>
        mpost <a href="http://bug_2.mp" target="_blank">bug_2.mp</a><br>
<br>
No go and make g_use_svg = 1. It will fails with ``Segmentation fault''.<br>
<br>
My METAPOST:<br>
<br>
        wkoszek|1:08:06|0|/home/wkoszek/o/mp$ mpost --version<br>
<br>
        MetaPost 1.208<br>
        Copyright 2009 AT&T Bell Laboratories.<br>
        There is NO warranty.  Redistribution of this software is<br>
        covered by the terms of both the MetaPost copyright and<br>
        the Lesser GNU Lesser General Public License.<br>
        For more information about these matters, see the files<br>
        named COPYING, COPYING.LESSER and the MetaPost source.<br>
        Primary author of MetaPost: John Hobby.<br>
        Current maintainer of MetaPost: Taco Hoekwater.<br>
<span class=""><font color="#888888"><br>
--<br>
Wojciech A. Koszek<br>
<a href="mailto:wkoszek@FreeBSD.czest.pl">wkoszek@FreeBSD.czest.pl</a><br>
<a href="http://www.koszek.com/" target="_blank">http://www.koszek.com/</a><br>
--<br>
<a href="http://tug.org/metapost/" target="_blank">http://tug.org/metapost/</a><br>
</font></span></blockquote></div><br><br clear="all"><div><br></div><div><div>prologues := 3;</div><div> </div><div>g_use_svg = 1;</div><div> </div><div>outputtemplate := "%j-%c.mps";</div><div>outputformat := "mps";</div><div>if g_use_svg > 0:</div><div>        outputtemplate := "%j-%c.svg";</div><div>        outputformat := "svg";</div><div>fi</div><div> </div><div>beginfig(4);</div><div>        path            circle;</div><div> </div><div>        % Scale everything</div><div>        w = 5in;</div><div> </div><div>        % Plate</div><div>        pickup pencircle scaled 3;</div><div>        circle = fullcircle scaled 1w;</div><div>        draw circle;</div><div>        show circle;</div><div> </div><div>        % Legend.</div><div>        pair    hours[];</div><div>        pair    twelve;</div><div>        rgbcolor c;</div><div>        c = (0.9, 0.1, 0.1);</div><div>        pickup pencircle scaled 10;</div><div>        twelve = (0, 0.9w/2);</div><div>        show twelve;</div><div>        for i = 0 upto 12:</div><div>                hours[i] = twelve rotated (30*i);</div><div>                draw hours[i] withcolor c;</div><div>                show hours[i];</div><div>                label.bot("x", hours[i]);</div><div>        endfor</div><div> </div><div>        % Hour pointer.</div><div>        pickup pencircle scaled 10;</div><div>        drawarrow origin--(0, 0.70w/2) rotated -90;</div><div>        drawdot(w/2,w/2);</div><div>endfig;</div><div>end</div></div><div><br></div><div><br></div><div><div># mpost <a href="http://bug.mp">bug.mp</a> </div><div>This is MetaPost, version 1.902 (TeX Live 2014) (kpathsea version 6.2.0)</div><div><br></div><div>(/media/Iomega_Ext_Drive/opt/luatex/texlive/2014/texmf-dist/metapost/base/mpost</div><div>.mp</div><div>(/media/Iomega_Ext_Drive/opt/luatex/texlive/2014/texmf-dist/metapost/base/plain</div><div>.mp</div><div>Preloading the plain mem file, version 1.005) ) (./<a href="http://bug.mp">bug.mp</a></div><div>>> path (see the transcript file)</div><div>>> (0,161.9989)</div><div>>> (0,161.9989)</div><div>>> (-80.99945,140.29556)</div><div>>> (-140.29556,80.99945)</div><div>>> (-161.9989,0)</div><div>>> (-140.29556,-80.99945)</div><div>>> (-80.99945,-140.29556)</div><div>>> (0,-161.9989)</div><div>>> (80.99945,-140.29556)</div><div>>> (140.29556,-80.99945)</div><div>>> (161.9989,0)</div><div>>> (140.29556,80.99945)</div><div>>> (80.99945,140.29556)</div><div>>> (0,161.9989) [4{psfonts.map}<cmr10.pfb>] )</div><div>(see the transcript file for additional information)</div><div>1 output file written: bug-4.svg</div><div>Transcript written on bug.log.</div></div><div><br></div><div><br></div><div>it looks ok to me</div><div><br></div>-- <br><div class="gmail_signature">luigi<br></div>
</div></div>