`negative currency not allowed` error causing siad to crash. 1.2.1-rc and 1.2.0
Created by: pmknutsen
siad
crashes with this error, whether or not wallet is unlocked.
goroutine 11156 [running]:
runtime/debug.Stack(0x445747, 0x0, 0xc4268fd160)
/usr/local/go/src/runtime/debug/stack.go:24 +0x79
runtime/debug.PrintStack()
/usr/local/go/src/runtime/debug/stack.go:16 +0x22
github.com/NebulousLabs/Sia/build.Critical(0xc4268fd208, 0x1, 0x1)
/home/luke/go/src/github.com/NebulousLabs/Sia/build/critical.go:15 +0xa7
github.com/NebulousLabs/Sia/types.Currency.Sub(0xc433346100, 0x0, 0x0, 0x0, 0x7f464b3da400, 0xc425ecaed0, 0x2, 0x6, 0xc
/home/luke/go/src/github.com/NebulousLabs/Sia/types/currency.go:179 +0x15d
github.com/NebulousLabs/Sia/modules/wallet.(*Wallet).ConfirmedBalance.func2(0xf707a184f57f869b, 0x6b73efadc5980fa0, 0xd
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/wallet/money.go:30 +0x134
reflect.Value.call(0x9cdba0, 0xc42a81fa80, 0x13, 0xa91793, 0x4, 0xc4268fd798, 0x2, 0x2, 0x0, 0xc42a81fb80, ...)
/usr/local/go/src/reflect/value.go:434 +0x91f
reflect.Value.Call(0x9cdba0, 0xc42a81fa80, 0x13, 0xc4268fd798, 0x2, 0x2, 0x0, 0xc4268fd760, 0x0)
/usr/local/go/src/reflect/value.go:302 +0xa4
github.com/NebulousLabs/Sia/modules/wallet.dbForEach.func1(0x7f43ae6131ea, 0x20, 0x20, 0x7f43ae61320a, 0x3e, 0x3e, 0x3e
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/wallet/database.go:148 +0x31f
github.com/NebulousLabs/bolt.(*Bucket).ForEach(0xc442e916c0, 0xc4268fd8c8, 0x9cdba0, 0xc42a81fa80)
/home/luke/go/src/github.com/NebulousLabs/bolt/bucket.go:390 +0xff
github.com/NebulousLabs/Sia/modules/wallet.dbForEach(0xc442e916c0, 0x9cdba0, 0xc42a81fa80, 0x14, 0xc442e916c0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/wallet/database.go:150 +0x20b
github.com/NebulousLabs/Sia/modules/wallet.dbForEachSiafundOutput(0xc4201080e0, 0xc42a81fa80, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/wallet/database.go:196 +0x77
github.com/NebulousLabs/Sia/modules/wallet.(*Wallet).ConfirmedBalance(0xc42007ef20, 0xc42010c500, 0x0, 0x0, 0x0, 0xffff
/home/luke/go/src/github.com/NebulousLabs/Sia/modules/wallet/money.go:31 +0x294
github.com/NebulousLabs/Sia/api.(*API).walletHandler(0xc428698870, 0xd90d60, 0xc420108000, 0xc4216ca300, 0x0, 0x0, 0x0)
/home/luke/go/src/github.com/NebulousLabs/Sia/api/wallet.go:114 +0x4c
github.com/NebulousLabs/Sia/api.(*API).(github.com/NebulousLabs/Sia/api.walletHandler)-fm(0xd90d60, 0xc420108000, 0xc42
/home/luke/go/src/github.com/NebulousLabs/Sia/api/api.go:241 +0x66
github.com/julienschmidt/httprouter.(*Router).ServeHTTP(0xc425b6b780, 0xd90d60, 0xc420108000, 0xc4216ca300)
/home/luke/go/src/github.com/julienschmidt/httprouter/router.go:344 +0x813
github.com/NebulousLabs/Sia/api.RequireUserAgent.func1(0xd90d60, 0xc420108000, 0xc4216ca300)
/home/luke/go/src/github.com/NebulousLabs/Sia/api/api.go:98 +0xba
net/http.HandlerFunc.ServeHTTP(0xc425b209c0, 0xd90d60, 0xc420108000, 0xc4216ca300)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/NebulousLabs/Sia/api.(*API).ServeHTTP(0xc428698870, 0xd90d60, 0xc420108000, 0xc4216ca300)
/home/luke/go/src/github.com/NebulousLabs/Sia/api/api.go:138 +0x58
net/http.(*ServeMux).ServeHTTP(0xc4200edbc0, 0xd90d60, 0xc420108000, 0xc4216ca300)
/usr/local/go/src/net/http/server.go:2238 +0x130
net/http.serverHandler.ServeHTTP(0xc4200a0bb0, 0xd90d60, 0xc420108000, 0xc4216ca300)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4391f32c0, 0xd916e0, 0xc442f50780)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
Critical error: negative currency not allowed