8000 font/sfnt: fix dropped errors · golang/image@33d1968 · GitHub
[go: up one dir, main page]

Skip to content

Commit 33d1968

Browse files
alrsnigeltao
authored andcommitted
font/sfnt: fix dropped errors
Pick up dropped errors in parseGPOSScriptFeatures() and parseGPOSKern(). Change-Id: I50d9b1feca4c69163df644702afb0c386c2987f7 Reviewed-on: https://go-review.googlesource.com/c/image/+/210499 Reviewed-by: Sebastien Binet <seb.binet@gmail.com> Reviewed-by: Nigel Tao <nigeltao@golang.org>
1 parent 58c2397 commit 33d1968
Copy full SHA for 33d1968

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

font/sfnt/gpos.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,9 @@ func (f *Font) parseGPOSKern(buf []byte) ([]byte, []kernFunc, error) {
6060

6161
// get all lookup indices for kern features
6262
buf, lookupIdx, err := f.parseGPOSFeaturesLookup(buf, int(f.gpos.offset)+int(featureListOffset), featureIdxs, hexFeatureKern)
63+
if err != nil {
64+
return buf, nil, err
65+
}
6366

6467
// LookupTableList: lookupCount,[]lookups
6568
buf, numLookupTables, err := f.src.varLenView(buf, int(f.gpos.offset)+int(lookupListOffset), 2, 0, 2)
@@ -284,6 +287,9 @@ func (f *Font) parseGPOSScriptFeatures(buf []byte, offset int, script uint32) ([
284287

285288
// LangSys table: lookupOrder (reserved), requiredFeatureIndex, featureIndexCount, []featureIndices
286289
buf, numFeatures, err := f.src.varLenView(buf, offset+int(scriptTableOffset)+int(defaultLangSysOffset), 6, 4, 2)
290+
if err != nil {
291+
return buf, nil, err
292+
}
287293

288294
featureIdxs := make([]int, numFeatures)
289295
for i := range featureIdxs {

0 commit comments

Comments
 (0)
0