summaryrefslogtreecommitdiff
path: root/pkg/cgroups/cgroups.go
diff options
context:
space:
mode:
authorAditya Rajan <arajan@redhat.com>2021-09-07 00:59:18 +0530
committerAditya Rajan <arajan@redhat.com>2021-09-07 00:59:21 +0530
commitbd6403927866738fdc7cdc1c0c18f2e838065637 (patch)
tree37b8e8ae9940fd4169914110ced9408fef85a990 /pkg/cgroups/cgroups.go
parent68481539a4f019229707dcee9e4f4f8465392f06 (diff)
downloadpodman-bd6403927866738fdc7cdc1c0c18f2e838065637.tar.gz
podman-bd6403927866738fdc7cdc1c0c18f2e838065637.tar.bz2
podman-bd6403927866738fdc7cdc1c0c18f2e838065637.zip
cgroup-info: check if user.slice is valid before accessing value
Prevent hitting `panic: runtime error: index out of range [1] with length 1` while performing `podman info` when unexpected values for user.slice is found. [NO TESTS NEEDED] Signed-off-by: Aditya Rajan <arajan@redhat.com>
Diffstat (limited to 'pkg/cgroups/cgroups.go')
-rw-r--r--pkg/cgroups/cgroups.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/pkg/cgroups/cgroups.go b/pkg/cgroups/cgroups.go
index 9cb32a364..4bb8de69b 100644
--- a/pkg/cgroups/cgroups.go
+++ b/pkg/cgroups/cgroups.go
@@ -231,7 +231,10 @@ func getCgroupPathForCurrentProcess() (string, error) {
for s.Scan() {
text := s.Text()
procEntries := strings.SplitN(text, "::", 2)
- cgroupPath = procEntries[1]
+ // set process cgroupPath only if entry is valid
+ if len(procEntries) > 1 {
+ cgroupPath = procEntries[1]
+ }
}
if err := s.Err(); err != nil {
return cgroupPath, err