diff --git a/src/users.js b/src/users.js index 593e08481..7bd32a18b 100644 --- a/src/users.js +++ b/src/users.js @@ -825,10 +825,11 @@ function setAvatar(id, filename, callback) { assert.strictEqual(typeof filename, 'string'); assert.strictEqual(typeof callback, 'function'); - fs.rename(filename, path.join(paths.PROFILE_ICONS_DIR, id), function (error) { + // rename() was failing on some servers with EXDEV + fs.copyFile(filename, path.join(paths.PROFILE_ICONS_DIR, id), function (error) { if (error) return callback(new BoxError(BoxError.FS_ERROR, error.message)); - callback(); + fs.unlink(filename, () => callback()); // ignore any unlink error }); }