Fix incorrect UID reporting (Bug #12970)

This commit is contained in:
Alberto Sepo
2017-06-14 00:12:36 +02:00
committed by Simon Steinbeiss
parent 0cd247daca
commit bd1e267062

View File

@@ -194,7 +194,7 @@ get_task_details (guint pid, Task *task)
gchar filename[96]; gchar filename[96];
gchar buffer[1024]; gchar buffer[1024];
snprintf (filename, 96, "/proc/%d/stat", pid); snprintf (filename, sizeof(filename), "/proc/%d/stat", pid);
if ((file = fopen (filename, "r")) == NULL || fgets (buffer, 1024, file) == NULL) if ((file = fopen (filename, "r")) == NULL || fgets (buffer, 1024, file) == NULL)
return FALSE; return FALSE;
fclose (file); fclose (file);
@@ -281,6 +281,7 @@ get_task_details (guint pid, Task *task)
task->rss *= get_pagesize (); task->rss *= get_pagesize ();
get_cpu_percent (task->pid, jiffies_user, &task->cpu_user, jiffies_system, &task->cpu_system); get_cpu_percent (task->pid, jiffies_user, &task->cpu_user, jiffies_system, &task->cpu_system);
snprintf (filename, sizeof(filename), "/proc/%d/task", pid);
stat (filename, &sstat); stat (filename, &sstat);
pw = getpwuid (sstat.st_uid); pw = getpwuid (sstat.st_uid);
task->uid = sstat.st_uid; task->uid = sstat.st_uid;
@@ -342,4 +343,3 @@ pid_is_sleeping (guint pid)
return (state[0] == 'T') ? TRUE : FALSE; return (state[0] == 'T') ? TRUE : FALSE;
} }