From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/107197 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Gerben Wierda Newsgroups: gmane.comp.tex.context Subject: lmt_followtext crashes while standard followtext itself works Date: Sun, 3 May 2020 23:47:04 +0200 Message-ID: Reply-To: mailing list for ConTeXt users Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.14\)) Content-Type: multipart/mixed; boundary="===============3568857716648744688==" Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="117765"; mail-complaints-to="usenet@ciao.gmane.io" To: mailing list for ConTeXt users Original-X-From: ntg-context-bounces@ntg.nl Sun May 03 23:47:56 2020 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane-mx.org Original-Received: from zapf.boekplan.nl ([5.39.185.232] helo=zapf.ntg.nl) by ciao.gmane.io with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jVMSm-000UR2-1m for gctc-ntg-context-518@m.gmane-mx.org; Sun, 03 May 2020 23:47:52 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id 449A8183A35; Sun, 3 May 2020 23:47:12 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id q3ry8DvkMKcY; Sun, 3 May 2020 23:47:09 +0200 (CEST) Original-Received: from zapf.ntg.nl (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id B8029183A34; Sun, 3 May 2020 23:47:09 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id E98F7183A33 for ; Sun, 3 May 2020 23:47:08 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qEAMjH9FsIm4 for ; Sun, 3 May 2020 23:47:07 +0200 (CEST) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=213.125.118.53; helo=mail.rna.nl; envelope-from=gerben.wierda@rna.nl; receiver= Original-Received: from mail.rna.nl (mail.rna.nl [213.125.118.53]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by zapf.ntg.nl (Postfix) with ESMTPS id 47B771839C6 for ; Sun, 3 May 2020 23:47:07 +0200 (CEST) Original-Received: from luna-wifi.rna.nl (luna-wifi.rna.nl [192.168.2.89]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.rna.nl (Postfix) with ESMTPSA id 7D5C23E119F4 for ; Sun, 3 May 2020 23:47:05 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rna.nl; s=dkim_rsa2048; t=1588542425; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=Vgc8Rm9mSodeawsjlnYydzu+aRh0PmoBcmv+NNW13DU=; b=XfX9YtNfCugjGNNc9UXkfAd/bofQsPuWvwWEG9VERoY6Jz/zjJpjEUAbpSFmcPy0sobFOU g7UGOCKh+/GYqyOHRhGztDOVhXRDo5AVFw7pRPZ+UV8K77QxPdLN77kiSYmjh8ejGOzs/C jCprSQnbr3Hhj8Wp9P3s4ngFhKRb3VqXQybzFta7vNjq1J2jVR3elR1rrUpz14ch9vps6X jL0KqcHcw/TT0WyMlHZH4leEQpklv2H8zPEzd927ceg88JAwtaIzW9mSD6Owg9aMozb/bQ Nd7Ic+NDoM0RXkrbkdFQt1q+GAblNteVsYYNzF6WN1qWzlHdRxAsv2BYmSdmmA== X-Mailer: Apple Mail (2.3445.104.14) X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.26 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ntg-context-bounces@ntg.nl Original-Sender: "ntg-context" Xref: news.gmane.io gmane.comp.tex.context:107197 Archived-At: --===============3568857716648744688== Content-Type: multipart/alternative; boundary="Apple-Mail=_162FC5F7-24AB-4616-8582-C0BE4B885C41" --Apple-Mail=_162FC5F7-24AB-4616-8582-C0BE4B885C41 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 The following example has been extracted from my automatically generated = MP code. \starttext \startMPpage string texstring; texstring :=3D "{\colored [r=3D0.00, g=3D0.00, b=3D0.00]{\definebodyfont = [9.0pt][rm][default=3DRegular at 9.0pt]\switchtobodyfont = [9.0pt]\setupinterlinespace [9.9pt]\tf E.g. publish/ subscribe}}"; path parpath; parpath :=3D (238,-167.00010681152344)..controls (238,-167.00010681152344) and = (238,-167.00010681152344) ..(238,-167.00010681152344)..controls (238,-166.60010673470143) and = (238,-166.20010665787942) ..(238,-165.80010658105741)..controls (238,-165.40010643392299) and = (238,-165.00010628678857) ..(238,-164.60010613965414)..controls (238,-164.2001060472048) and = (238,-163.80010595475545) ..(238,-163.40010586230611)..controls (238,-155.56353466513065) and = (231.9683162849897,-149) ..(224.2552179837387,-149)..controls (223.85521783436539,-149) and = (223.45521768499208,-149) ..(223.05521753561877,-149)..controls (222.65521740514737,-149) and = (222.255217274676,-149) ..(221.8552171442046,-149)..controls (221.45521705001735,-149) and = (221.0552169558301,-149) ..(220.65521686164286,-149)..controls (220.25521665589685,-149) and = (219.85521645015083,-149) ..(219.45521624440482,-149)..controls (219.05521631807508,-149) and = (218.65521639174534,-149) ..(218.2552164654156,-149)..controls (217.85521724037432,-149) and = (217.45521801533303,-149) ..(217.05521879029175,-149)..controls (216.6552203077878,-149) and = (216.25522182528385,-149) ..(215.85522334277991,-149)..controls (215.45522405083273,-149) and = (215.05522475888554,-149) ..(214.65522546693836,-149)..controls (214.25522550518758,-149) and = (213.8552255434368,-149) ..(213.45522558168602,-149)..controls (213.0552253720042,-149) and = (212.65522516232238,-149) ..(212.25522495264056,-149)..controls (211.8552248680295,-149) and = (211.45522478341843,-149) ..(211.05522469880736,-149)..controls (210.65522456100436,-149) and = (210.25522442320135,-149) ..(209.85522428539835,-149)..controls (209.45522414149036,-149) and = (209.05522399758237,-149) ..(208.65522385367439,-149)..controls (200.95716230583835,-149) and = (195,-155.63452868682958) ..(195,-163.48966401016395)..controls (195,-163.88966411101083) and = (195,-164.28966421185771) ..(195,-164.68966431270459)..controls (195,-165.08966445890775) and = (195,-165.4896646051109) ..(195,-165.88966475131406)..controls (195,-166.25981210471718) and = (195,-166.62995945812031) ..(195,-167.00010681152344); picture pic; pic :=3D lmt_followtext [ text =3D texstring, path =3D parpath, spread =3D false, ]; \stopMPpage \stoptext lmt_followtext crashes on this code with: metapost log > ! angle(0,0) is taken as zero. metapost log > ...0)]shifted(-wid/2,0)rotated(angle(ad)) metapost log > = shifted.ap;draw.pic[(EXPR0... metapost log > ...caled0.5pt.withcolor.green;fi;endfor metapost log > = ;if((autoscaleupfollowtext... metapost log >=20 metapost log > image->...ture;currentpicture:=3Dnullpicture;(TEXT3) metapost log > = ;currentpicture.if.str(SUF... metapost log >=20 metapost log > followtext->...b_n;setbounds.currentpicture.to.b;) metapost log > = endgroup metapost log > ...parameter"path"),getparameter"text") metapost log > = ;popparameters; metapost log > image->...ture;currentpicture:=3Dnullpicture;(TEXT3) metapost log > = ;currentpicture.if.str(SUF... metapost log >=20 metapost log > lmt_do_followtext->...meter"text");popparameters;) metapost log > = endgroup metapost log > lmt_do_followtext metapost log > =20 metapost log > <*> ...exstring, path =3D parpath, spread =3D false, ] metapost log > ; ; When I adapt the parameters that create parpath in my code, other uses = of lmt_followtext crash. The same combinations of text and path so far = haven=E2=80=99t crashed basic followtext(). I=E2=80=99ve run into comparable situations in my own code where I had = to add code to handle the existence of a (0,0) direction (e.g. when I = had two identical points on a path, but that is not the case here). The = above minimal example triggers the failure. G= --Apple-Mail=_162FC5F7-24AB-4616-8582-C0BE4B885C41 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 The = following example has been extracted from my automatically generated MP = code.

\starttext

\startMPpage

string texstring;
texstring :=3D "{\colored [r=3D0.00, g=3D0.00, = b=3D0.00]{\definebodyfont [9.0pt][rm][default=3DRegular at = 9.0pt]\switchtobodyfont [9.0pt]\setupinterlinespace [9.9pt]\tf E.g. = publish/ subscribe}}";
path parpath;
parpath :=3D
(238,-167.00010681152344)..controls (238,-167.00010681152344) = and (238,-167.00010681152344)
 ..(238,-167.00010681152344)..controls = (238,-166.60010673470143) and = (238,-166.20010665787942)
 ..(238,-165.80010658105741)..controls = (238,-165.40010643392299) and = (238,-165.00010628678857)
 ..(238,-164.60010613965414)..controls = (238,-164.2001060472048) and = (238,-163.80010595475545)
 ..(238,-163.40010586230611)..controls = (238,-155.56353466513065) and = (231.9683162849897,-149)
 ..(224.2552179837387,-149)..controls = (223.85521783436539,-149) and = (223.45521768499208,-149)
 ..(223.05521753561877,-149)..controls = (222.65521740514737,-149) and = (222.255217274676,-149)
 ..(221.8552171442046,-149)..controls = (221.45521705001735,-149) and = (221.0552169558301,-149)
 ..(220.65521686164286,-149)..controls = (220.25521665589685,-149) and = (219.85521645015083,-149)
 ..(219.45521624440482,-149)..controls = (219.05521631807508,-149) and = (218.65521639174534,-149)
 ..(218.2552164654156,-149)..controls = (217.85521724037432,-149) and = (217.45521801533303,-149)
 ..(217.05521879029175,-149)..controls = (216.6552203077878,-149) and = (216.25522182528385,-149)
 ..(215.85522334277991,-149)..controls = (215.45522405083273,-149) and = (215.05522475888554,-149)
 ..(214.65522546693836,-149)..controls = (214.25522550518758,-149) and = (213.8552255434368,-149)
 ..(213.45522558168602,-149)..controls = (213.0552253720042,-149) and = (212.65522516232238,-149)
 ..(212.25522495264056,-149)..controls = (211.8552248680295,-149) and = (211.45522478341843,-149)
 ..(211.05522469880736,-149)..controls = (210.65522456100436,-149) and = (210.25522442320135,-149)
 ..(209.85522428539835,-149)..controls = (209.45522414149036,-149) and = (209.05522399758237,-149)
 ..(208.65522385367439,-149)..controls = (200.95716230583835,-149) and = (195,-155.63452868682958)
 ..(195,-163.48966401016395)..controls = (195,-163.88966411101083) and = (195,-164.28966421185771)
 ..(195,-164.68966431270459)..controls = (195,-165.08966445890775) and = (195,-165.4896646051109)
 ..(195,-165.88966475131406)..controls = (195,-166.25981210471718) and = (195,-166.62995945812031)
 ..(195,-167.00010681152344);
picture pic;
pic :=3D lmt_followtext [
  text =3D texstring,
  path =3D parpath,
  spread =3D false,
];


\stopMPpage
\stoptext

lmt_followtext crashes  on this = code with:

metapost log    > ! angle(0,0) is taken as = zero.
metapost log    > = <for(1)> = ...0)]shifted(-wid/2,0)rotated(angle(ad))
metapost log    >         =                     =                     =   shifted.ap;draw.pic[(EXPR0...
metapost = log    > <argument> = ...caled0.5pt.withcolor.green;fi;endfor
metapost = log    >               =                     =                 = ;if((autoscaleupfollowtext...
metapost = log    > 
metapost = log    > = image->...ture;currentpicture:=3Dnullpicture;(TEXT3)
metapost log    >         =                     =                     =   ;currentpicture.if.str(SUF...
metapost = log    > 
metapost = log    > = followtext->...b_n;setbounds.currentpicture.to.b;)
metapost log    >         =                     =                     =   endgroup
metapost log    > = <argument> = ...parameter"path"),getparameter"text")
metapost = log    >               =                     =                 = ;popparameters;
metapost log    > = image->...ture;currentpicture:=3Dnullpicture;(TEXT3)
metapost log    >         =                     =                     =   ;currentpicture.if.str(SUF...
metapost = log    > 
metapost = log    > = lmt_do_followtext->...meter"text");popparameters;)
metapost log    >         =                     =                     =   endgroup
metapost log    > = <scantokens> lmt_do_followtext
metapost = log    >              =                 =  
metapost log    > <*> = ...exstring, path =3D parpath, spread =3D false, ]
metapost log    >         =                     =                     =   ; ;


When I adapt the parameters that create parpath in my code, = other uses of lmt_followtext crash. The same combinations of text and = path so far haven=E2=80=99t crashed basic followtext().

I=E2=80=99ve run into = comparable situations in my own code where I had to add code to handle = the existence of a (0,0) direction (e.g. when I had two identical points = on a path, but that is not the case here). The above minimal example = triggers the failure.

G
= --Apple-Mail=_162FC5F7-24AB-4616-8582-C0BE4B885C41-- --===============3568857716648744688== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSWYgeW91ciBxdWVzdGlvbiBpcyBvZiBpbnRlcmVz dCB0byBvdGhlcnMgYXMgd2VsbCwgcGxlYXNlIGFkZCBhbiBlbnRyeSB0byB0aGUgV2lraSEKCm1h aWxsaXN0IDogbnRnLWNvbnRleHRAbnRnLm5sIC8gaHR0cDovL3d3dy5udGcubmwvbWFpbG1hbi9s aXN0aW5mby9udGctY29udGV4dAp3ZWJwYWdlICA6IGh0dHA6Ly93d3cucHJhZ21hLWFkZS5ubCAv IGh0dHA6Ly9jb250ZXh0LmFhbmhldC5uZXQKYXJjaGl2ZSAgOiBodHRwczovL2JpdGJ1Y2tldC5v cmcvcGhnL2NvbnRleHQtbWlycm9yL2NvbW1pdHMvCndpa2kgICAgIDogaHR0cDovL2NvbnRleHRn YXJkZW4ubmV0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCg== --===============3568857716648744688==--