# std.fs.Dir: Refactor atomicSymLink from std.fs · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/219acaa1d6ca4279085d7eb9449e7d0469a48432)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: 219acaa1d6ca4279085d7eb9449e7d0469a48432

Requested commit: 219acaa1d6ca4279085d7eb9449e7d0469a48432

Commit: 219acaa1d6ca4279085d7eb9449e7d0469a48432

Tree: 8d25f1122c8a168dc37177f82028b56307ba0a0d

Author: Carter Snook

Committer: Andrew Kelley

## Message

```
std.fs.Dir: Refactor atomicSymLink from std.fs

Deprecates std.fs.atomicSymLink and removes the allocator requirement
from the new std.fs.Dir.atomicSymLink. Replaces the two usages of this
within std.

I did not include the TODOs from the original code that were based
off of `switch (err) { ..., else => return err }` not having correct
inference that cases handled in `...` are impossible in the error
union return type because these are not specified in many places but
I can add them back if wanted.

Thank you @squeek502 for help with fixing buffer overflows!

```

## Parents

- [4a77c7f2588ce42c10df53fc1242f684ff506720](https://git.cafe/gitcafe/zig/commit/4a77c7f2588ce42c10df53fc1242f684ff506720?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/219acaa1d6ca4279085d7eb9449e7d0469a48432?format=markdown)
