diff options
author | Jeremy Allison <jra@samba.org> | 2001-12-26 08:32:30 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2001-12-26 08:32:30 +0000 |
commit | 26e4c4099c61c7ba9f2153e56061bea9882553d9 (patch) | |
tree | b68969a82c21508f28f511fc7263e5242351e47c /source/smbd/open.c | |
parent | 5e3491784277dd90180ef199d2fa258614958545 (diff) | |
download | samba-26e4c4099c61c7ba9f2153e56061bea9882553d9.tar.gz samba-26e4c4099c61c7ba9f2153e56061bea9882553d9.tar.xz samba-26e4c4099c61c7ba9f2153e56061bea9882553d9.zip |
Get religion on using SAFE_FREE.
Jeremy.
Diffstat (limited to 'source/smbd/open.c')
-rw-r--r-- | source/smbd/open.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/source/smbd/open.c b/source/smbd/open.c index 5b7844b83a2..309bc0be873 100644 --- a/source/smbd/open.c +++ b/source/smbd/open.c @@ -503,7 +503,7 @@ dev = %x, inode = %.0f\n", *p_oplock_request, share_entry->op_type, fname, (unsi if(opb_ret == False) { DEBUG(0,("open_mode_check: FAILED when breaking oplock (%x) on file %s, \ dev = %x, inode = %.0f\n", old_shares[i].op_type, fname, (unsigned int)dev, (double)inode)); - free((char *)old_shares); + SAFE_FREE((char *)old_shares); errno = EACCES; unix_ERR_class = ERRDOS; unix_ERR_code = ERRbadshare; @@ -522,7 +522,7 @@ dev = %x, inode = %.0f\n", old_shares[i].op_type, fname, (unsigned int)dev, (dou if we can too */ if(check_share_mode(conn, share_entry, share_mode, fname, fcbopen, p_flags) == False) { - free((char *)old_shares); + SAFE_FREE((char *)old_shares); errno = EACCES; return -1; } @@ -530,7 +530,7 @@ dev = %x, inode = %.0f\n", old_shares[i].op_type, fname, (unsigned int)dev, (dou } /* end for */ if(broke_oplock) { - free((char *)old_shares); + SAFE_FREE((char *)old_shares); num_share_modes = get_share_modes(conn, dev, inode, &old_shares); oplock_contention_count++; @@ -566,7 +566,7 @@ dev = %x, inode = %.0f. Deleting it to continue...\n", (int)broken_entry.pid, fn * other process's entry. */ - free((char *)old_shares); + SAFE_FREE((char *)old_shares); num_share_modes = get_share_modes(conn, dev, inode, &old_shares); break; } @@ -575,8 +575,7 @@ dev = %x, inode = %.0f. Deleting it to continue...\n", (int)broken_entry.pid, fn } while(broke_oplock); - if(old_shares != 0) - free((char *)old_shares); + SAFE_FREE((char *)old_shares); /* * Refuse to grant an oplock in case the contention limit is @@ -1282,7 +1281,7 @@ dev = %x, inode = %.0f\n", share_entry->op_type, fname, (unsigned int)dev, (doub DEBUG(0,("check_file_sharing: FAILED when breaking oplock (%x) on file %s, \ dev = %x, inode = %.0f\n", old_shares[i].op_type, fname, (unsigned int)dev, (double)inode)); - free((char *)old_shares); + SAFE_FREE((char *)old_shares); return False; } lock_share_entry(conn, dev, inode); @@ -1312,7 +1311,7 @@ dev = %x, inode = %.0f\n", old_shares[i].op_type, fname, (unsigned int)dev, (dou if(broke_oplock) { - free((char *)old_shares); + SAFE_FREE((char *)old_shares); num_share_modes = get_share_modes(conn, dev, inode, &old_shares); } } while(broke_oplock); @@ -1333,7 +1332,6 @@ dev = %x, inode = %.0f\n", old_shares[i].op_type, fname, (unsigned int)dev, (dou free_and_exit: unlock_share_entry(conn, dev, inode); - if(old_shares != NULL) - free((char *)old_shares); + SAFE_FREE((char *)old_shares); return(ret); } |