From fac3d0376a7c75307104ac4fc65b945020f6cca2 Mon Sep 17 00:00:00 2001 From: lionsoul2014 Date: Sun, 24 May 2026 20:14:29 +0800 Subject: [PATCH] PushBack for empty match --- maker/golang/xdb/editor.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/maker/golang/xdb/editor.go b/maker/golang/xdb/editor.go index c8911a4..72fade4 100644 --- a/maker/golang/xdb/editor.go +++ b/maker/golang/xdb/editor.go @@ -54,8 +54,11 @@ func INewEditor(version *Version, srcReader io.ReadCloser) (*Editor, error) { } // load the segments - if err := e.loadSegments(); err != nil { - return nil, fmt.Errorf("failed to load segments: %s", err) + if srcReader != nil { + err := e.loadSegments() + if err != nil { + return nil, fmt.Errorf("failed to load segments: %s", err) + } } return e, nil @@ -241,7 +244,10 @@ func (e *Editor) PutSegment(seg *Segment, cb func(newSeg *Segment, oldList []*Se if len(eList) == 0 { // could this even be a case ? - return 0, 0, fmt.Errorf("failed to find the related segment") + // return 0, 0, fmt.Errorf("failed to find the related segment") + + e.segments.PushBack(seg) + return 0, 1, nil } // print for debug