This looks fine.  Try passing NULL for shaperList and see if that changes
anything.

If it doesn't, then something in our shape_plan_cache isn't working.  I
have a hard time imagining what though.


On Mon, Aug 11, 2014 at 1:55 AM, Norbert Preining <[email protected]> wrote:

> Hi Behdad,
>
> I have now done the following changes in XeTeXLayoutInterface.cpp
> (somewhere aboce the surrounding function, declar curtime and nxttime)
>
> static time_t curtime;
> static time_t nxttime;
>
> int
> layoutChars(XeTeXLayoutEngine engine, uint16_t chars[], int32_t offset,
> int32_t count, int32_t max,
>                         bool rightToLeft)
> {
> ...
>
> curtime = time(NULL);
> fprintf(stderr, "DEBUG [%d] hbFace=%d, segment_props.script=%d,
> segment_props.direction=%d, segment-props.language=%d,
> engine->nFeatures=%d, shaperList=%s\n",
>                        curtime, hbFace, segment_props.script,
> segment_props.direction, segment_props.language, engine->nFeatures,
> engine->ShaperList);
>     shape_plan = hb_shape_plan_create_cached(hbFace, &segment_props,
> engine->features, engine->nFeatures, engine->ShaperList);
> nxttime = time(NULL);
> fprintf(stderr, "DEBUG [%d] <%d> return from
> hb_shape_plan_create_cached\n", nxttime, nxttime-curtime);
> ....
>
>
> I don't know if this is enough, but I got loads of lines of course,
> and about 300 or more where there is
>         <1>
> so a second of working time in hb_shape_plan_create_cached.
>
> Concerning the other values:
>
> hbFace: in total 5 different values, 4 at the beginning and then the same
> segment_props.script switches between 0 and 1281455214, but most of the
> time
>         it is 128...
> segment_props.direction is always 4
> segment-props.language=44576992
> engine->nFeatures=0
> shaperList=<A8>1N               (printed as %s)
>
> I have uploaded the full output and the test file:
> http://www.preining.info/xelatexslow-debug-output.log (21M)
> http://www.preining.info/xelatexslow-debug-output.log.gz (98k)
> http://www.preining.info/xelatexslow.tex (174k)
>
> Hope that gives you any hint. Let me know if I can provide any
> further data.
>
> Thanks a lot
>
> Norbert
>
> ------------------------------------------------------------------------
> PREINING, Norbert                               http://www.preining.info
> JAIST, Japan                                 TeX Live & Debian Developer
> GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0  ACF0 6CAC A448 860C DC13
> ------------------------------------------------------------------------
>



-- 
behdad
http://behdad.org/

Reply via email to