TBR: veyron/services/mgmt/lib/fs: expose gob error, and add todo to switch to vom.
Change-Id: I9e3eac249b46a772d0c873c8e86d999c0706bd20
diff --git a/services/mgmt/lib/fs/simplestore.go b/services/mgmt/lib/fs/simplestore.go
index 1006159..a6be49a 100644
--- a/services/mgmt/lib/fs/simplestore.go
+++ b/services/mgmt/lib/fs/simplestore.go
@@ -91,13 +91,13 @@
decoder := gob.NewDecoder(file)
if err := decoder.Decode(&data); err != nil {
// Two situations. One is not an error.
- fi, err := os.Stat(configuredPersistentFile)
- if err != nil {
+ fi, serr := os.Stat(configuredPersistentFile)
+ if serr != nil {
// Someone probably deleted the file out from underneath us. Give up.
- return nil, fmt.Errorf("Decode() failed, file went missing: %v", err)
+ return nil, fmt.Errorf("Decode() failed, file went missing: %v", serr)
}
if fi.Size() != 0 {
- return nil, fmt.Errorf("Decode() failed, backing file truncated: %v", err)
+ return nil, fmt.Errorf("Decode() failed: data format mismatch or backing file truncated: %v", err)
}
// An empty backing file deserializes to an empty memstore.
}