zfs: FilesystemDiff: support empty left list = no common ancestor

This commit is contained in:
Christian Schwarz 2017-05-07 12:07:59 +02:00
parent cd8796aed4
commit d0c0e2510b

View File

@ -138,6 +138,17 @@ func ZFSListFilesystemVersions(fs DatasetPath) (res []FilesystemVersion, err err
// names are unique (bas ZFS_PROP_GUID replacement) // names are unique (bas ZFS_PROP_GUID replacement)
func MakeFilesystemDiff(left, right []FilesystemVersion) (diff FilesystemDiff) { func MakeFilesystemDiff(left, right []FilesystemVersion) (diff FilesystemDiff) {
if right == nil {
panic("right must not be nil")
}
if left == nil { // treat like no common ancestor
diff = FilesystemDiff{
IncrementalPath: nil,
Diverged: false,
MRCAPathRight: right,
}
}
// Assert both left and right are sorted by createtxg // Assert both left and right are sorted by createtxg
var leftSorted, rightSorted fsbyCreateTXG var leftSorted, rightSorted fsbyCreateTXG
leftSorted = left leftSorted = left