The function `smbprofile_persvc_unref` may be called by smb2_service.c
due to `on_err_call_profile_unref`. In such case, need to protect from
possible negative refcnt of persvc entry.
Signed-off-by: Shachar Sharon <ssharon@redhat.com>
Reviewed-by: Anoop C S <anoopcs@samba.org>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
persvc = smbprofile_persvc_lookup(snum);
if (persvc != NULL) {
- persvc->refcnt--;
+ if (persvc->refcnt > 0) {
+ persvc->refcnt--;
+ } else {
+ DBG_INFO("Profile persvc-entry with zero refcnt "
+ "(snum %d)\n",
+ snum);
+ }
}
}