]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
Ensure we are very explicit about what we're comparing when
authorJeremy Allison <jra@samba.org>
Mon, 20 Aug 2001 22:13:53 +0000 (22:13 +0000)
committerJeremy Allison <jra@samba.org>
Mon, 20 Aug 2001 22:13:53 +0000 (22:13 +0000)
we're comparing structures (ie. don't just do a memcmp). I
don't think this will fix the fcntl spin issue, but it's a
"just in case" change.
Jeremy.

source/locking/locking.c

index 9b393ed6bacc698f3339327eb267dcfb8e8e846b..ee3ce7c7d41cab5a843d323710a172fee1181194 100644 (file)
@@ -448,8 +448,8 @@ size_t del_share_mode(files_struct *fsp, share_mode_entry **ppse)
           from the record */
        for (i=0;i<data->num_share_mode_entries;) {
                if (shares[i].pid == pid &&
-                   memcmp(&shares[i].time, 
-                          &fsp->open_time,sizeof(struct timeval)) == 0) {
+                   shares[i].time.tv_sec == fsp->open_time.tv_sec &&
+                   shares[i].time.tv_usec == fsp->open_time.tv_usec ) {
                        *ppse = memdup(&shares[i], sizeof(*shares));
                        data->num_share_mode_entries--;
                        memmove(&shares[i], &shares[i+1], 
@@ -566,8 +566,8 @@ static BOOL mod_share_mode(files_struct *fsp,
        for (i=0;i<data->num_share_mode_entries;i++) {
                if (pid == shares[i].pid && 
                    shares[i].share_mode == fsp->share_mode &&
-                   memcmp(&shares[i].time, 
-                          &fsp->open_time,sizeof(struct timeval)) == 0) {
+                   shares[i].time.tv_sec == fsp->open_time.tv_sec &&
+                   shares[i].time.tv_usec == fsp->open_time.tv_usec ) {
                        mod_fn(&shares[i], fsp->dev, fsp->inode, param);
                        need_store=1;
                }