mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-19 04:43:10 -06:00
Alternate fix for #846, with concatenated errors
This commit is contained in:
parent
5741235833
commit
89e4ad9364
|
|
@ -39,7 +39,14 @@ func PostJSON(
|
|||
|
||||
res, err := httpClient.Do(req.WithContext(ctx))
|
||||
if res != nil {
|
||||
defer (func() { err = res.Body.Close() })()
|
||||
defer (func() {
|
||||
finalErr := res.Body.Close()
|
||||
if err != nil && finalErr != nil {
|
||||
err = fmt.Errorf("%s\n%s", err, finalErr)
|
||||
} else if err == nil {
|
||||
err = finalErr
|
||||
}
|
||||
})()
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
|
|
|
|||
|
|
@ -82,7 +82,14 @@ func (r *Request) Do() (err error) {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer (func() { err = res.Body.Close() })()
|
||||
defer (func() {
|
||||
finalErr := res.Body.Close()
|
||||
if err != nil && finalErr != nil {
|
||||
err = fmt.Errorf("%s\n%s", err, finalErr)
|
||||
} else if err == nil {
|
||||
err = finalErr
|
||||
}
|
||||
})()
|
||||
|
||||
if res.StatusCode != r.WantedStatusCode {
|
||||
return fmt.Errorf("incorrect status code. Expected: %d Got: %d", r.WantedStatusCode, res.StatusCode)
|
||||
|
|
|
|||
|
|
@ -112,8 +112,14 @@ func WriteTempFile(reqReader io.Reader, maxFileSizeBytes config.FileSizeBytes, a
|
|||
if err != nil {
|
||||
return
|
||||
}
|
||||
defer (func() { err = tmpFile.Close() })()
|
||||
|
||||
defer (func() {
|
||||
finalErr := tmpFile.Close()
|
||||
if err != nil && finalErr != nil {
|
||||
err = fmt.Errorf("%s\n%s", err, finalErr)
|
||||
} else if err == nil {
|
||||
err = finalErr
|
||||
}
|
||||
})()
|
||||
// The amount of data read is limited to maxFileSizeBytes. At this point, if there is more data it will be truncated.
|
||||
limitedReader := io.LimitReader(reqReader, int64(maxFileSizeBytes))
|
||||
// Hash the file data. The hash will be returned. The hash is useful as a
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ package thumbnailer
|
|||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"image"
|
||||
"image/draw"
|
||||
|
||||
|
|
@ -125,7 +126,14 @@ func writeFile(img image.Image, dst string) (err error) {
|
|||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer (func() { err = out.Close() })()
|
||||
defer (func() {
|
||||
finalErr := out.Close()
|
||||
if err != nil && finalErr != nil {
|
||||
err = fmt.Errorf("%s\n%s", err, finalErr)
|
||||
} else if err == nil {
|
||||
err = finalErr
|
||||
}
|
||||
})()
|
||||
|
||||
return jpeg.Encode(out, img, &jpeg.Options{
|
||||
Quality: 85,
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ package storage
|
|||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"fmt"
|
||||
|
||||
"github.com/matrix-org/dendrite/common"
|
||||
"github.com/matrix-org/dendrite/roomserver/types"
|
||||
|
|
@ -119,7 +120,14 @@ func (s *inviteStatements) updateInviteRetired(
|
|||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer (func() { err = rows.Close() })()
|
||||
defer (func() {
|
||||
finalErr := rows.Close()
|
||||
if err != nil && finalErr != nil {
|
||||
err = fmt.Errorf("%s\n%s", err, finalErr)
|
||||
} else if err == nil {
|
||||
err = finalErr
|
||||
}
|
||||
})()
|
||||
for rows.Next() {
|
||||
var inviteEventID string
|
||||
if err := rows.Scan(&inviteEventID); err != nil {
|
||||
|
|
|
|||
Loading…
Reference in a new issue