Function writeManifest [src]

If want_shared_lock is true, this function automatically downgrades the lock from exclusive to shared.

Prototype

pub fn writeManifest(self: *Manifest) !void

Parameters

self: *Manifest

Source

pub fn writeManifest(self: *Manifest) !void { assert(self.have_exclusive_lock); const manifest_file = self.manifest_file.?; if (self.manifest_dirty) { self.manifest_dirty = false; var buffer: [4000]u8 = undefined; var fw = manifest_file.writer(&buffer); writeDirtyManifestToStream(self, &fw) catch |err| switch (err) { error.WriteFailed => return fw.err.?, else => |e| return e, }; } if (self.want_shared_lock) { try self.downgradeToSharedLock(); } }