Allow getwork result to be a bool or JSON object.
The getwork command alters the output depending on whether or not the optional data parameter was specified. It is a JSON object when no data was provided, and a boolean indicating whether a solution was found when data was provided.
This commit is contained in:
parent
a733633685
commit
5135fd3203
1 changed files with 15 additions and 4 deletions
11
jsonapi.go
11
jsonapi.go
|
@ -933,11 +933,22 @@ func ReadResultCmd(cmd string, message []byte) (Reply, error) {
|
|||
result.Result = res
|
||||
}
|
||||
case "getwork":
|
||||
// getwork can either return a JSON object or a boolean
|
||||
// depending on whether or not data was provided. Choose the
|
||||
// right form accordingly.
|
||||
if strings.Contains(string(objmap["result"]), "{") {
|
||||
var res GetWorkResult
|
||||
err = json.Unmarshal(objmap["result"], &res)
|
||||
if err == nil {
|
||||
result.Result = res
|
||||
}
|
||||
} else {
|
||||
var res bool
|
||||
err = json.Unmarshal(objmap["result"], &res)
|
||||
if err == nil {
|
||||
result.Result = res
|
||||
}
|
||||
}
|
||||
case "validateaddress":
|
||||
var res ValidateAddressResult
|
||||
err = json.Unmarshal(objmap["result"], &res)
|
||||
|
|
Loading…
Reference in a new issue