diff options
author | Andrew Tridgell <tridge@samba.org> | 1997-11-29 13:35:09 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 1997-11-29 13:35:09 +0000 |
commit | c7df484ef6d746fb1f5b53007ee04fa54e5f2223 (patch) | |
tree | a9b06ac8c2287be29eb7841cf1a747512bf988f2 /source/locking | |
parent | 901b95aa77ac1ecc45823c23fb4e1d9da8dc8318 (diff) | |
download | samba-c7df484ef6d746fb1f5b53007ee04fa54e5f2223.tar.gz samba-c7df484ef6d746fb1f5b53007ee04fa54e5f2223.tar.xz samba-c7df484ef6d746fb1f5b53007ee04fa54e5f2223.zip |
don't display locks for dead processes in smbstatus
Diffstat (limited to 'source/locking')
-rw-r--r-- | source/locking/locking_shm.c | 8 | ||||
-rw-r--r-- | source/locking/locking_slow.c | 6 |
2 files changed, 9 insertions, 5 deletions
diff --git a/source/locking/locking_shm.c b/source/locking/locking_shm.c index 45ab14d452f..77ceb2573c2 100644 --- a/source/locking/locking_shm.c +++ b/source/locking/locking_shm.c @@ -619,14 +619,16 @@ static int shm_share_forall(void (*fn)(share_mode_entry *, char *)) while(entry_scanner_p != 0) { - fn(&entry_scanner_p->e, - file_scanner_p->file_name); + if (process_exists(entry_scanner_p->e.pid)) { + fn(&entry_scanner_p->e, + file_scanner_p->file_name); + count++; + } entry_scanner_p = (shm_share_mode_entry *) shmops->offset2addr( entry_scanner_p->next_share_mode_entry); - count++; } /* end while entry_scanner_p */ file_scanner_p = (share_mode_record *) shmops->offset2addr(file_scanner_p->next_offset); diff --git a/source/locking/locking_slow.c b/source/locking/locking_slow.c index 9bd6d65aa79..935ed09f60d 100644 --- a/source/locking/locking_slow.c +++ b/source/locking/locking_slow.c @@ -996,8 +996,10 @@ static int slow_share_forall(void (*fn)(share_mode_entry *, char *)) e.pid = SVAL(p,SME_PID_OFFSET); e.op_type = SVAL(p,SME_OPLOCK_TYPE_OFFSET); - fn(&e, fname); - count++; + if (process_exists(e.pid)) { + fn(&e, fname); + count++; + } } /* end for i */ if(buf) |