func (fs *FragmentStorage) getHardState() (pb.HardState, error) { r := bufio.NewReader(fs.fhardState) hs := pb.HardState{} if data, e := r.ReadSlice('\n'); e != nil { return hs, e } else { data = data[:len(data)-1] return hs, hs.Unmarshal(data) } return hs, nil }