Merge pull request #287 from etosan/master

PPID and JID update fix
This commit is contained in:
Hisham Muhammad 2015-10-07 20:48:46 -03:00
commit e906c0dddb
2 changed files with 10 additions and 3 deletions

View File

@ -199,6 +199,7 @@ void ProcessList_goThroughEntries(ProcessList* this) {
proc->show = ! ((hideKernelThreads && Process_isKernelThread(fp)) || (hideUserlandThreads && Process_isUserlandThread(proc))); proc->show = ! ((hideKernelThreads && Process_isKernelThread(fp)) || (hideUserlandThreads && Process_isUserlandThread(proc)));
if (!preExisting) { if (!preExisting) {
fp->jid = kproc->ki_jid; fp->jid = kproc->ki_jid;
proc->pid = kproc->ki_pid; proc->pid = kproc->ki_pid;
@ -206,7 +207,6 @@ void ProcessList_goThroughEntries(ProcessList* this) {
fp->kernel = 1; fp->kernel = 1;
else else
fp->kernel = 0; fp->kernel = 0;
proc->ppid = kproc->ki_ppid;
proc->tpgid = kproc->ki_tpgid; proc->tpgid = kproc->ki_tpgid;
proc->tgid = kproc->ki_pid; proc->tgid = kproc->ki_pid;
proc->session = kproc->ki_sid; proc->session = kproc->ki_sid;
@ -219,12 +219,19 @@ void ProcessList_goThroughEntries(ProcessList* this) {
proc->comm = FreeBSDProcessList_readProcessName(fpl->kd, kproc, &proc->basenameOffset); proc->comm = FreeBSDProcessList_readProcessName(fpl->kd, kproc, &proc->basenameOffset);
fp->jname = FreeBSDProcessList_readJailName(kproc); fp->jname = FreeBSDProcessList_readJailName(kproc);
} else { } else {
if(fp->jid != kproc->ki_jid) {
fp->jid = kproc->ki_jid;
free(fp->jname);
fp->jname = FreeBSDProcessList_readJailName(kproc);
}
if (settings->updateProcessNames) { if (settings->updateProcessNames) {
free(proc->comm); free(proc->comm);
proc->comm = FreeBSDProcessList_readProcessName(fpl->kd, kproc, &proc->basenameOffset); proc->comm = FreeBSDProcessList_readProcessName(fpl->kd, kproc, &proc->basenameOffset);
} }
} }
proc->ppid = kproc->ki_ppid;
proc->m_size = kproc->ki_size / pageSizeKb / 1000; proc->m_size = kproc->ki_size / pageSizeKb / 1000;
proc->m_resident = kproc->ki_rssize; // * pageSizeKb; proc->m_resident = kproc->ki_rssize; // * pageSizeKb;
proc->nlwp = kproc->ki_numthreads; proc->nlwp = kproc->ki_numthreads;