fix(core): authorize external symlink targets
This commit is contained in:
parent
d246597d1d
commit
1e3f8abf2d
2 changed files with 57 additions and 2 deletions
|
|
@ -155,6 +155,23 @@ export const Plugin = {
|
|||
prepared.push({ ...hunk, target, before: original.replace(/^\uFEFF/, ""), after: "" })
|
||||
return
|
||||
}
|
||||
if (!target.externalDirectory && !hunk.movePath) {
|
||||
const resolved = resolveTarget(location, yield* fs.resolve(target.canonical))
|
||||
if (resolved.externalDirectory) {
|
||||
yield* permission.assert({
|
||||
action: "external_directory",
|
||||
resources: [resolved.externalDirectory.resource],
|
||||
save: [resolved.externalDirectory.resource],
|
||||
metadata: {
|
||||
filepath: resolved.canonical,
|
||||
parentDir: resolved.externalDirectory.directory,
|
||||
},
|
||||
sessionID: context.sessionID,
|
||||
agent: context.agent,
|
||||
source,
|
||||
})
|
||||
}
|
||||
}
|
||||
const previous = updates.get(target.canonical)
|
||||
const original =
|
||||
previous ??
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue