mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
fix: use temp file on same device with mcp file edit (#20477)
Otherwise you can get errors like "invalid cross-device link".
This commit is contained in:
+3
-1
@@ -250,7 +250,9 @@ func (a *agent) editFile(ctx context.Context, path string, edits []workspacesdk.
|
|||||||
transforms[i] = replace.String(edit.Search, edit.Replace)
|
transforms[i] = replace.String(edit.Search, edit.Replace)
|
||||||
}
|
}
|
||||||
|
|
||||||
tmpfile, err := afero.TempFile(a.filesystem, "", filepath.Base(path))
|
// Create an adjacent file to ensure it will be on the same device and can be
|
||||||
|
// moved atomically.
|
||||||
|
tmpfile, err := afero.TempFile(a.filesystem, filepath.Dir(path), filepath.Base(path))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return http.StatusInternalServerError, err
|
return http.StatusInternalServerError, err
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user