Skip to content

Commit f11409b

Browse files
committed
Fix #1111
1 parent ba010c9 commit f11409b

File tree

2 files changed

+8
-5
lines changed

2 files changed

+8
-5
lines changed

pkg/pdfcpu/validate/nameTree.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -719,7 +719,7 @@ func validateNameTree(xRefTable *model.XRefTable, name string, d types.Dict, roo
719719
return "", "", nil, err
720720
}
721721

722-
if a == nil {
722+
if len(a) == 0 {
723723
return "", "", nil, errors.New("pdfcpu: validateNameTree: missing \"Kids\" array")
724724
}
725725

@@ -734,7 +734,11 @@ func validateNameTree(xRefTable *model.XRefTable, name string, d types.Dict, roo
734734
var kidNode *model.Node
735735
kminKid, kmax, kidNode, err = validateNameTree(xRefTable, name, d, false)
736736
if err != nil {
737-
return "", "", nil, err
737+
if xRefTable.ValidationMode == model.ValidationStrict {
738+
return "", "", nil, err
739+
}
740+
continue
741+
//return kmin, kmax, nil, nil
738742
}
739743
if kmin == "" {
740744
kmin = kminKid

pkg/pdfcpu/validate/xReftable.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -250,16 +250,15 @@ func validateNames(xRefTable *model.XRefTable, rootDict types.Dict, required boo
250250
continue
251251
}
252252

253-
d1.Insert(treeName, value)
254-
255253
_, _, tree, err := validateNameTree(xRefTable, treeName, d, true)
256254
if err != nil {
257255
return err
258256
}
259257

260-
if tree != nil {
258+
if tree != nil && tree.Kmin != "" && tree.Kmax != "" {
261259
// Internalize.
262260
xRefTable.Names[treeName] = tree
261+
d1.Insert(treeName, value)
263262
}
264263

265264
}

0 commit comments

Comments
 (0)