|
|
@@ -158,13 +158,12 @@ func ImportChain(chainmgr *core.ChainManager, fn string) error {
|
|
|
var i int
|
|
|
for ; ; i++ {
|
|
|
var b types.Block
|
|
|
- err := stream.Decode(&b)
|
|
|
- if err == io.EOF {
|
|
|
+ if err := stream.Decode(&b); err == io.EOF {
|
|
|
break
|
|
|
} else if err != nil {
|
|
|
return fmt.Errorf("at block %d: %v", i, err)
|
|
|
}
|
|
|
- if err := chainmgr.InsertChain(types.Blocks{b}); err != nil {
|
|
|
+ if err := chainmgr.InsertChain(types.Blocks{&b}); err != nil {
|
|
|
return fmt.Errorf("invalid block %d: %v", i, err)
|
|
|
}
|
|
|
}
|
|
|
@@ -174,7 +173,7 @@ func ImportChain(chainmgr *core.ChainManager, fn string) error {
|
|
|
|
|
|
func ExportChain(chainmgr *core.ChainManager, fn string) error {
|
|
|
fmt.Printf("exporting blockchain '%s'\n", fn)
|
|
|
- fh, err := os.OpenFile(fn, os.O_WRONLY|os.O_TRUNC, os.ModePerm)
|
|
|
+ fh, err := os.OpenFile(fn, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, os.ModePerm)
|
|
|
if err != nil {
|
|
|
return err
|
|
|
}
|