From d8d5818b47009f28433a7e96bcce8d116c8a9769 Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Mon, 6 Mar 2023 09:38:43 +0000 Subject: [bugfix] internal server error on search not found (#1590) * add error value wrapping, include status code / not found flags from transport errors, update error usages Signed-off-by: kim * add code commenting for gtserror functions Signed-off-by: kim --------- Signed-off-by: kim --- internal/transport/derefinstance.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'internal/transport/derefinstance.go') diff --git a/internal/transport/derefinstance.go b/internal/transport/derefinstance.go index 2dcf367a0..41949f449 100644 --- a/internal/transport/derefinstance.go +++ b/internal/transport/derefinstance.go @@ -30,6 +30,7 @@ import ( apimodel "github.com/superseriousbusiness/gotosocial/internal/api/model" apiutil "github.com/superseriousbusiness/gotosocial/internal/api/util" + "github.com/superseriousbusiness/gotosocial/internal/gtserror" "github.com/superseriousbusiness/gotosocial/internal/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/id" "github.com/superseriousbusiness/gotosocial/internal/log" @@ -102,7 +103,8 @@ func dereferenceByAPIV1Instance(ctx context.Context, t *transport, iri *url.URL) defer resp.Body.Close() if resp.StatusCode != http.StatusOK { - return nil, fmt.Errorf("GET request to %s failed: %s", iriStr, resp.Status) + err := fmt.Errorf("GET request to %s failed: %s", iriStr, resp.Status) + return nil, gtserror.WithStatusCode(err, resp.StatusCode) } b, err := io.ReadAll(resp.Body) @@ -252,7 +254,8 @@ func callNodeInfoWellKnown(ctx context.Context, t *transport, iri *url.URL) (*ur defer resp.Body.Close() if resp.StatusCode != http.StatusOK { - return nil, fmt.Errorf("callNodeInfoWellKnown: GET request to %s failed: %s", iriStr, resp.Status) + err := fmt.Errorf("GET request to %s failed: %s", iriStr, resp.Status) + return nil, gtserror.WithStatusCode(err, resp.StatusCode) } b, err := io.ReadAll(resp.Body) @@ -303,7 +306,8 @@ func callNodeInfo(ctx context.Context, t *transport, iri *url.URL) (*apimodel.No defer resp.Body.Close() if resp.StatusCode != http.StatusOK { - return nil, fmt.Errorf("callNodeInfo: GET request to %s failed: %s", iriStr, resp.Status) + err := fmt.Errorf("GET request to %s failed: %s", iriStr, resp.Status) + return nil, gtserror.WithStatusCode(err, resp.StatusCode) } b, err := io.ReadAll(resp.Body) -- cgit v1.2.3