From 13df52081b6ebffc926247cea694d5613c70ca24 Mon Sep 17 00:00:00 2001 From: marston Date: Mon, 15 Apr 2024 11:18:48 -0400 Subject: [PATCH] hopefully handling empty cid and fids better --- jprov/server/file_server.go | 17 +++++++++++++++++ jprov/testutils/testFile.go | 2 -- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/jprov/server/file_server.go b/jprov/server/file_server.go index 9bfdfcd..0d305f6 100644 --- a/jprov/server/file_server.go +++ b/jprov/server/file_server.go @@ -69,6 +69,7 @@ func saveFile(file multipart.File, handler *multipart.FileHeader, sender string, if msg.Err != nil { ctx.Logger.Error(msg.Err.Error()) + return err } if err = writeResponse(*w, *msg, fid, cid); err != nil { @@ -92,6 +93,22 @@ func writeResponse(w http.ResponseWriter, upload types.Upload, fid, cid string) return json.NewEncoder(w).Encode(resp) } + if len(cid) == 0 { + e := fmt.Errorf("cid: '%s' is empty", cid) + resp := types.ErrorResponse{ + Error: e.Error(), + } + return json.NewEncoder(w).Encode(resp) + } + + if len(fid) == 0 { + e := fmt.Errorf("file with cid '%s' has empty fid: '%s'", cid, fid) + resp := types.ErrorResponse{ + Error: e.Error(), + } + return json.NewEncoder(w).Encode(resp) + } + resp := types.UploadResponse{ CID: cid, FID: fid, diff --git a/jprov/testutils/testFile.go b/jprov/testutils/testFile.go index 3227b1a..d70a8b8 100644 --- a/jprov/testutils/testFile.go +++ b/jprov/testutils/testFile.go @@ -9,7 +9,6 @@ import ( storagetypes "github.com/jackalLabs/canine-chain/v3/x/storage/types" - "github.com/wealdtech/go-merkletree" "github.com/wealdtech/go-merkletree/sha3" ) @@ -56,4 +55,3 @@ func (m *MerkleFile) GetJsonProof() []byte { func (m *MerkleFile) GenerateActiveDeal() storagetypes.ActiveDeals { return storagetypes.ActiveDeals{Blocktoprove: "0", Merkle: hex.EncodeToString(m.tree.Root())} } -