| err0 = err, root.dir?, fids-cons(root, fs, ofh) ⊦ ⟪choose err with pre-writemeta(path, md, err, user, root, fs, ofh) in err0 := err; if err0 = ESUCCESS then if root[path].dir? then root[path].meta := md else let fid = root[path].fid in fs[fid].meta := md; psynced := ?⟫ (root.dir? ∧ fids-cons(root, fs, ofh)) |
err0 = err1, root.dir?, fids-cons(root, fs, ofh), pre-writemeta(path, md, err, user, root, fs, ofh) ⊦ ⟪err0 := err; if err0 = ESUCCESS then if root[path].dir? then root[path].meta := md else let fid = root[path].fid in fs[fid].meta := md; psynced := ?⟫ (root.dir? ∧ fids-cons(root, fs, ofh))
err0 = err, root.dir?, fids-cons(root, fs, ofh) ⊦ ∃ err. pre-writemeta(path, md, err, user, root, fs, ofh)