1
mirror of https://github.com/rclone/rclone synced 2024-11-30 09:10:05 +01:00

combine: fix goroutine stack overflow on bad object

If the Remote() call failed to do its path adjustment, then it would
recursively call Remote() as part of logging the failure and cause a
stack overflow.

This fixes it by logging the underlying object instead.

See: https://forum.rclone.org/t/rclone-runtime-goroutine-stack-exceeds-1000000000-byte-limit/37912
This commit is contained in:
Nick Craig-Wood 2023-05-01 11:45:51 +01:00
parent 27eb8c7f45
commit dea6bdf3df

View File

@ -916,7 +916,7 @@ func (o *Object) String() string {
func (o *Object) Remote() string {
newPath, err := o.u.pathAdjustment.do(o.Object.String())
if err != nil {
fs.Errorf(o, "Bad object: %v", err)
fs.Errorf(o.Object, "Bad object: %v", err)
return err.Error()
}
return newPath