s3: printing: Now we never pass an offset of -1, remove the off_t==-1 protections...
[nivanova/samba-autobuild/.git] / source3 / printing / nt_printing.c
index 328964579d875908fe39cdff64fdbec211ea0aed..6bc48ae36343307fc9efc23ecf0cde75cbfb086b 100644 (file)
@@ -324,15 +324,13 @@ static ssize_t printing_pread_data(files_struct *fsp,
        size_t total=0;
        off_t in_pos = *poff;
 
-       if (in_pos != (off_t)-1) {
-               in_pos = SMB_VFS_LSEEK(fsp, in_pos, SEEK_SET);
-               if (in_pos == (off_t)-1) {
-                       return -1;
-               }
-               /* Don't allow integer wrap on read. */
-               if (in_pos + byte_count < in_pos) {
-                       return -1;
-               }
+       in_pos = SMB_VFS_LSEEK(fsp, in_pos, SEEK_SET);
+       if (in_pos == (off_t)-1) {
+               return -1;
+       }
+       /* Don't allow integer wrap on read. */
+       if (in_pos + byte_count < in_pos) {
+               return -1;
        }
 
        while (total < byte_count) {
@@ -340,9 +338,7 @@ static ssize_t printing_pread_data(files_struct *fsp,
                                        byte_count - total);
 
                if (ret == 0) {
-                       if (*poff != (off_t)-1) {
-                               *poff = in_pos;
-                       }
+                       *poff = in_pos;
                        return total;
                }
                if (ret == -1) {
@@ -355,9 +351,7 @@ static ssize_t printing_pread_data(files_struct *fsp,
                in_pos += ret;
                total += ret;
        }
-       if (*poff != (off_t)-1) {
-               *poff = in_pos;
-       }
+       *poff = in_pos;
        return (ssize_t)total;
 }