Good morning, Hans!

Thanks for the quick fix!

Best,
Philipp

···<date: 2014-07-28, Monday>···<from: Philipp Gesang>···

> ···<date: 2014-07-28, Monday>···<from: Philipp Gesang>···
> 
> > (CC’ing the Context list.)
> > 
> > ···<date: 2014-07-28, Monday>···<from: Jura Pintar>···
> > 
> > > Do you have a prediction about how long it will take before a fix is
> > > released?
> > 
> > No, sorry. What I do have though is the culprit:
> > 
> >       c70b2e466bbb07e976f8684d56ae4e5398169e7d is the first bad commit
> 
> Seems to be related to the feature precedence code. If I revert
> the related changes as in the attached patch, the bug vanishes
> (and so does te feature ordering …).
> 

> diff --git a/src/luaotfload-fontloader.lua b/src/luaotfload-fontloader.lua
> index 293a319..719a1f7 100644
> --- a/src/luaotfload-fontloader.lua
> +++ b/src/luaotfload-fontloader.lua
> @@ -9152,34 +9152,26 @@ local function featuresinitializer(tfmdata,value)
>        local language=properties.language
>        local basesubstitutions=rawdata.resources.features.gsub
>        local basepositionings=rawdata.resources.features.gpos
> -      if basesubstitutions or basepositionings then
> -        local sequences=tfmdata.resources.sequences
> -        for s=1,#sequences do
> -          local sequence=sequences[s]
> -          local sfeatures=sequence.features
> -          if sfeatures then
> -            local order=sequence.order
> -            if order then
> -              for i=1,#order do 
> -                local feature=order[i]
> -                if features[feature] then
> -                  local 
> validlookups,lookuplist=collectlookups(rawdata,feature,script,language)
> -                  if not validlookups then
> -                  elseif basesubstitutions and basesubstitutions[feature] 
> then
> -                    if trace_preparing then
> -                      report_prepare("filtering base feature %a for 
> %a",feature,fullname)
> -                    end
> -                    
> applybasemethod("preparesubstitutions",tfmdata,feature,value,validlookups,lookuplist)
> -                    registerbasefeature(feature,value)
> -                  elseif basepositionings and basepositionings[feature] then
> -                    if trace_preparing then
> -                      report_prepare("filtering base feature %a for 
> %a",feature,fullname)
> -                    end
> -                    
> applybasemethod("preparepositionings",tfmdata,feature,features[feature],validlookups,lookuplist)
> -                    registerbasefeature(feature,value)
> -                  end
> -                end
> -              end
> +      if basesubstitutions then
> +        for feature,data in next,basesubstitutions do
> +          local value=features[feature]
> +          if value then
> +            local 
> validlookups,lookuplist=collectlookups(rawdata,feature,script,language)
> +            if validlookups then
> +              
> applybasemethod("preparesubstitutions",tfmdata,feature,value,validlookups,lookuplist)
> +              registerbasefeature(feature,value)
> +            end
> +          end
> +        end
> +      end
> +      if basepositionings then
> +        for feature,data in next,basepositionings do
> +          local value=features[feature]
> +          if value then
> +            local 
> validlookups,lookuplist=collectlookups(rawdata,feature,script,language)
> +            if validlookups then
> +              
> applybasemethod("preparepositionings",tfmdata,feature,features[feature],validlookups,lookuplist)
> +              registerbasefeature(feature,value)
>              end
>            end
>          end




> ___________________________________________________________________________________
> If your question is of interest to others as well, please add an entry to the 
> Wiki!
> 
> maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
> webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
> archive  : http://foundry.supelec.fr/projects/contextrev/
> wiki     : http://contextgarden.net
> ___________________________________________________________________________________

Attachment: pgpWdobr_Ztis.pgp
Description: PGP signature

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to