mirror of
https://github.com/syumai/workers.git
synced 2025-03-10 17:29:11 +00:00
reduce panic in stream canceling
This commit is contained in:
parent
0713696d4a
commit
1b359b90d9
@ -179,11 +179,22 @@ func ConvertReaderToReadableStream(reader io.ReadCloser) js.Value {
|
|||||||
return NewPromise(cb)
|
return NewPromise(cb)
|
||||||
}))
|
}))
|
||||||
rsInit.Set("cancel", js.FuncOf(func(js.Value, []js.Value) any {
|
rsInit.Set("cancel", js.FuncOf(func(js.Value, []js.Value) any {
|
||||||
err := stream.Cancel()
|
var cb js.Func
|
||||||
if err != nil {
|
cb = js.FuncOf(func(this js.Value, pArgs []js.Value) any {
|
||||||
panic(err)
|
defer cb.Release()
|
||||||
}
|
resolve := pArgs[0]
|
||||||
return js.Undefined()
|
reject := pArgs[1]
|
||||||
|
go func() {
|
||||||
|
err := stream.Cancel()
|
||||||
|
if err != nil {
|
||||||
|
reject.Invoke(Error(err.Error()))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
resolve.Invoke()
|
||||||
|
}()
|
||||||
|
return js.Undefined()
|
||||||
|
})
|
||||||
|
return NewPromise(cb)
|
||||||
}))
|
}))
|
||||||
return ReadableStreamClass.New(rsInit)
|
return ReadableStreamClass.New(rsInit)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user