From: Alan W. I. <Ala...@gm...> - 2018-12-11 04:51:09
|
On 2018-12-10 19:04-0800 Alan W. Irwin wrote: > Hi Phil: > > This is mostly addressed to you because it turns out one of your > commits is causing release-critical trouble with the plsori > call in example 3 as well as any attempt to use a non-zero -ori > option. [...] > I used the commands > > make -j16 x01c ; make -j16 cairo > examples/c/x01c -dev xcairo -ori 0.001 > > to help git bisect the issue. [...] > @Phil: > This commit (or its reverse) is not intrusive at all so it should not > be that difficult to figure out why this change had such a > catastrophic effect on plsdiori. Hi Phil (again): After some investigation I decided to make the following *local* change to the master tip version. diff --git a/src/plcore.c b/src/plcore.c index 8d82b5b0f..33c84eeb7 100644 --- a/src/plcore.c +++ b/src/plcore.c @@ -1965,10 +1965,10 @@ calc_didev( void ) // Set clip limits to conform to new page size - plP_sclp( (PLINT) ( plsc->didxax * plsc->phyxmi + plsc->didxb ), - (PLINT) ( plsc->didxax * plsc->phyxma + plsc->didxb ), - (PLINT) ( plsc->didyay * plsc->phyymi + plsc->didyb ), - (PLINT) ( plsc->didyay * plsc->phyyma + plsc->didyb ) ); + plsc->diclpxmi = (PLINT) ( plsc->didxax * plsc->phyxmi + plsc->didxb ); + plsc->diclpxma = (PLINT) ( plsc->didxax * plsc->phyxma + plsc->didxb ); + plsc->diclpymi = (PLINT) ( plsc->didyay * plsc->phyymi + plsc->didyb ); + plsc->diclpyma = (PLINT) ( plsc->didyay * plsc->phyyma + plsc->didyb ); } This change reverses one part of your commit that is obviously incorrect (since plP_sclp does not set plsc->diclpxmi et al and instead sets struct elements with almost the same name (clpxmi rather than diclpxmi, etc.)) My quick tests of this change shows it restores proper functioning of -ori and example 3 while also having good rendering results for examples/c/x33c -dev wxwidgets as well as -dev xwin, -dev xcairo, and -dev qtwidget. So I am hugely relieved to have found this solution for this regression so quickly. However, I haven't pushed this change yet because I haven't comprehensively tested it yet. Alan __________________________ Alan W. Irwin Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ |