tar: support -T - and -X -
[oweals/busybox.git] / libbb / procps.c
index 7924660481f022c4d045ead812748528bd6f6cc8..fb4c320015b3ca010f743fa1fea2f62628d0d0de 100644 (file)
@@ -154,6 +154,7 @@ static unsigned long fast_strtoul_10(char **endptr)
        return n;
 }
 
+# if ENABLE_FEATURE_FAST_TOP
 static long fast_strtol_10(char **endptr)
 {
        if (**endptr != '-')
@@ -162,6 +163,7 @@ static long fast_strtol_10(char **endptr)
        (*endptr)++;
        return - (long)fast_strtoul_10(endptr);
 }
+# endif
 
 static char *skip_fields(char *str, int count)
 {
@@ -302,6 +304,7 @@ procps_status_t* FAST_FUNC procps_scan(procps_status_t* sp, int flags)
                                goto got_entry;
                        closedir(sp->task_dir);
                        sp->task_dir = NULL;
+                       sp->main_thread_pid = 0;
                }
 #endif
                entry = readdir(sp->dir);
@@ -321,6 +324,7 @@ procps_status_t* FAST_FUNC procps_scan(procps_status_t* sp, int flags)
                        char task_dir[sizeof("/proc/%u/task") + sizeof(int)*3];
                        sprintf(task_dir, "/proc/%u/task", pid);
                        sp->task_dir = xopendir(task_dir);
+                       sp->main_thread_pid = pid;
                        continue;
                }
 #endif
@@ -448,7 +452,7 @@ procps_status_t* FAST_FUNC procps_scan(procps_status_t* sp, int flags)
 //FIXME: is it safe to assume this field exists?
                        sp->last_seen_on_cpu = fast_strtoul_10(&cp);
 # endif
-#endif /* end of !ENABLE_FEATURE_TOP_SMP_PROCESS */
+#endif /* FEATURE_FAST_TOP */
 
 #if ENABLE_FEATURE_PS_ADDITIONAL_COLUMNS
                        sp->niceness = tasknice;