Refactor, check return value from fgets()

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2021-04-04 12:35:35 +02:00
parent 5342881bf4
commit d40b426c1b
+10 -8
View File
@@ -96,35 +96,37 @@ char *pid_cmdline(int pid, char *buf, size_t len)
char *pid_comm(int pid, char *buf, size_t len)
{
char *ptr = NULL;
FILE *fp;
fp = fopenf("r", "/proc/%d/comm", pid);
if (!fp)
return NULL;
fgets(buf, len, fp);
if (fgets(buf, len, fp))
ptr = chomp(buf);
fclose(fp);
return chomp(buf);
return ptr;
}
char *pid_cgroup(int pid, char *buf, size_t len)
{
char *ptr;
char *ptr = NULL;
FILE *fp;
fp = fopenf("r", "/proc/%d/cgroup", pid);
if (!fp)
return NULL;
fgets(buf, len, fp);
if (fgets(buf, len, fp))
ptr = chomp(buf);
fclose(fp);
ptr = strchr(buf, '/');
if (!ptr)
return NULL;
if (ptr)
ptr = strchr(buf, '/');
return chomp(ptr);
return ptr;
}
static uint64_t cgroup_uint64(char *path, char *file)