diff options
Diffstat (limited to 'doPatch.go')
| -rw-r--r-- | doPatch.go | 32 |
1 files changed, 17 insertions, 15 deletions
@@ -4,6 +4,7 @@ package main import ( + "fmt" "os" "path/filepath" @@ -40,13 +41,12 @@ func doPatch() error { } func doPatchList() error { - psets, err := openPatchsets() - if err != nil { - log.Info("Open Patchsets failed", err) - return err + openPatchsets() + if me.psets == nil { + return fmt.Errorf("Open Patchsets failed") } - log.Info("got psets len", len(psets.Patchsets)) - all := psets.SortByName() + log.Info("got psets len", len(me.psets.Patchsets)) + all := me.psets.SortByName() for all.Scan() { pset := all.Next() // log.Info("pset name =", pset.Name) @@ -55,8 +55,11 @@ func doPatchList() error { return nil } -func savePatchsets(psets *forgepb.Patchsets) error { - data, err := psets.Marshal() +func savePatchsets() error { + if me.psets == nil { + return fmt.Errorf("savePatchesets() can't save nil") + } + data, err := me.psets.Marshal() if err != nil { log.Info("protobuf.Marshal() failed:", err) return err @@ -73,21 +76,21 @@ func savePatchsets(psets *forgepb.Patchsets) error { return nil } -func openPatchsets() (*forgepb.Patchsets, error) { +func openPatchsets() { fullpath := filepath.Join(me.forge.GetConfigDir(), "patchsets.pb") data, err := os.ReadFile(fullpath) if err != nil { log.Info("Patchsets open failed:", err, fullpath) - return nil, err + return } psets := new(forgepb.Patchsets) err = psets.Unmarshal(data) if err != nil { log.Info("Unmarshal patchsets failed", err) - return nil, err + return } - return psets, nil + me.psets = psets } // returns bad if patches can not be applied @@ -169,8 +172,7 @@ func doPatchGet() error { dumpPatchset(pset) } - if err := savePatchsets(psets); err != nil { - return err - } + log.Info("FIXME: can't save these yet. must merge with on disk psets here") + // savePatchsets() return nil } |
