3 Commits
Author SHA1 Message Date
dualfroz b5e9125c98 Describe this repository 2026-10-22 21:05:02 +02:00
dualfroz d32a327c5f Stop rewriting an alias file's own metadata
Writing a volume rebuilds every alias file, because the `alis` record
names its target by CNID and CNIDs are assigned afresh on each write.
It rebuilt more than the record, though: the file's type and creator
were overwritten with ones guessed from the target, the rest of the
resource fork was thrown away, and the data fork was cleared.

Round-tripping the Apple Menu's Control Panels alias out of a System 7
image therefore turned `fact` into `fdrp`, dropped its `vers` resources,
and renamed the `alis` from "Control Panels alias" to "Control Panels".
Aliases to applications lost their `adrp` for whatever the target's type
happened to be -- `APPC`, `cdev`.

Only the `alis` resource is replaced now, in place and under its own
name; type and creator are guessed only for an alias built here, which
has neither. Reading and rewriting the 29 infinite-mac images machfs
can parse touches 73 alias files: type and creator used to change on 10
of them and now change on none, and 28 resource forks used to lose more
than the `alis` record and now lose nothing else. (Their data forks were
already empty, so clearing those had cost nothing in practice.)

For mihaip/infinite-mac#84
2026-09-13 15:20:49 +02:00
upstream 1f8e7b5288 Upstream mihaip/machfs state of the touched files before 391602e4b7 2026-09-11 23:15:47 +02:00