diff --git a/drivers/onedrive/util.go b/drivers/onedrive/util.go index ad300af4..945f5fee 100644 --- a/drivers/onedrive/util.go +++ b/drivers/onedrive/util.go @@ -156,7 +156,8 @@ func (d *Onedrive) Request(url string, method string, callback base.ReqCallback, if err != nil { return nil, err } - return d.Request(url, method, callback, resp) + // retry once with the refreshed token, never loop on a bad token + return d.Request(url, method, callback, resp, true) } return nil, errors.New(e.Error.Message) } @@ -310,7 +311,7 @@ func (d *Onedrive) getDrive(ctx context.Context) (*DriveResp, error) { var resp DriveResp _, err := d.Request(api, http.MethodGet, func(req *resty.Request) { req.SetContext(ctx) - }, &resp, true) + }, &resp) if err != nil { return nil, err } diff --git a/drivers/onedrive_app/util.go b/drivers/onedrive_app/util.go index 896b95b7..0331f456 100644 --- a/drivers/onedrive_app/util.go +++ b/drivers/onedrive_app/util.go @@ -182,7 +182,8 @@ func (d *OnedriveAPP) Request(url string, method string, callback base.ReqCallba if err != nil { return nil, err } - return d.Request(url, method, callback, resp) + // retry once with the refreshed token, never loop on a bad token + return d.Request(url, method, callback, resp, true) } return nil, errors.New(e.Error.Message) } @@ -295,7 +296,7 @@ func (d *OnedriveAPP) getDrive(ctx context.Context) (*DriveResp, error) { var resp DriveResp _, err := d.Request(api, http.MethodGet, func(req *resty.Request) { req.SetContext(ctx) - }, &resp, true) + }, &resp) if err != nil { return nil, err }