From 4775b513f9c0c4d07eff68d64959b8d2174d1324 Mon Sep 17 00:00:00 2001 From: Roman Khimov Date: Fri, 16 Jul 2021 13:49:14 +0300 Subject: [PATCH] native: do proper error handling when deserializing user data --- pkg/core/native/oracle.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkg/core/native/oracle.go b/pkg/core/native/oracle.go index 7c500f6cf..624346fa8 100644 --- a/pkg/core/native/oracle.go +++ b/pkg/core/native/oracle.go @@ -277,11 +277,13 @@ func (o *Oracle) FinishInternal(ic *interop.Context) error { }), }) - r := io.NewBinReaderFromBuf(req.UserData) - userData := stackitem.DecodeBinary(r) + userData, err := stackitem.Deserialize(req.UserData) + if err != nil { + return err + } args := []stackitem.Item{ stackitem.Make(req.URL), - stackitem.Make(userData), + userData, stackitem.Make(resp.Code), stackitem.Make(resp.Result), }