files task: fix potential nil pointer error

If the user didn't exist, we would panic with a nil pointer error
This commit is contained in:
Justin Santa Barbara 2017-12-15 01:06:00 -05:00
parent 3a10a8c7cb
commit 060d94e9e8
1 changed files with 6 additions and 0 deletions

View File

@ -37,11 +37,17 @@ func EnsureFileOwner(destPath string, owner string, groupName string) (bool, err
if err != nil { if err != nil {
return changed, fmt.Errorf("error looking up user %q: %v", owner, err) return changed, fmt.Errorf("error looking up user %q: %v", owner, err)
} }
if user == nil {
return changed, fmt.Errorf("user %q not found", owner)
}
group, err := LookupGroup(groupName) group, err := LookupGroup(groupName)
if err != nil { if err != nil {
return changed, fmt.Errorf("error looking up group %q: %v", groupName, err) return changed, fmt.Errorf("error looking up group %q: %v", groupName, err)
} }
if group == nil {
return changed, fmt.Errorf("group %q not found", owner)
}
if int(stat.Sys().(*syscall.Stat_t).Uid) == user.Uid && int(stat.Sys().(*syscall.Stat_t).Gid) == group.Gid { if int(stat.Sys().(*syscall.Stat_t).Uid) == user.Uid && int(stat.Sys().(*syscall.Stat_t).Gid) == group.Gid {
return changed, nil return changed, nil