author | Michael Krelin <hacker@klever.net> | 2004-08-01 20:02:28 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2004-08-01 20:02:28 (UTC) |
commit | 3ae8e764889099513eba9a991e43074421e796ca (patch) (side-by-side diff) | |
tree | 5216651f87b396b07851cc13fd11be52e19b0420 | |
parent | 2efc8ab6481fd4dcfcd23b5beed4c1369edab1f4 (diff) | |
download | dudki-3ae8e764889099513eba9a991e43074421e796ca.zip dudki-3ae8e764889099513eba9a991e43074421e796ca.tar.gz dudki-3ae8e764889099513eba9a991e43074421e796ca.tar.bz2 |
fixed handling of 'ProcessName' on FreeBSD
-rw-r--r-- | NEWS.xml | 1 | ||||
-rw-r--r-- | src/process.cc | 14 |
2 files changed, 13 insertions, 2 deletions
@@ -4,2 +4,3 @@ <ni>do not act -e when doing -r</ni> + <ni>proper handling of <kbd>ProcessName</kbd> on <kbd>FreeBSD</kbd></ni> </version> diff --git a/src/process.cc b/src/process.cc index 8a5b5d2..96c874f 100644 --- a/src/process.cc +++ b/src/process.cc @@ -251,4 +251,3 @@ void process::gather_proc_info() { ifstream ss(s,ios::in); - if(!ss) - continue; + if(ss) { getline(ss,cmd); @@ -262,2 +261,13 @@ void process::gather_proc_info() { cmd.erase(cp); + }else{ + r = snprintf(s,sizeof(s),"/proc/%d/status",*i); + if(r>=sizeof(s) || r<1) + continue; + ifstream ss(s,ios::in); + if(!ss) + continue; + ss >> cmd; + if(cmd.empty()) + continue; + } r = snprintf(s,sizeof(s),"/proc/%d/cmdline",*i); |