"gztell()" is also affected by the libz mess on platforms where "off_t"
authorguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Tue, 25 Jan 2000 04:49:55 +0000 (04:49 +0000)
committerguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Tue, 25 Jan 2000 04:49:55 +0000 (04:49 +0000)
is bigger than a "long"; this is itojun's fix for that, turning
"file_tell()" into a wrapper function in "file_wrappers.c", just like
"file_seek()".

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1554 f5534014-38df-0310-8fa8-9805f1628bb7

wiretap/file_wrappers.c
wiretap/file_wrappers.h

index 83aa02ea7fdcdaf6b7dc957dd451c057f00802b9..48d755842116584e7b48d5d182d97f2c40a4aed4 100644 (file)
@@ -1,6 +1,6 @@
 /* file_wrappers.c
  *
- * $Id: file_wrappers.c,v 1.3 2000/01/22 06:22:37 guy Exp $
+ * $Id: file_wrappers.c,v 1.4 2000/01/25 04:49:55 guy Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
 int
 file_seek(void *stream, long offset, int whence)
 {
-       return gzseek(stream, offset, whence);
+       return gzseek(stream, (z_off_t)offset, whence);
+}
+
+long
+file_tell(void *stream)
+{
+       return (long)gztell(stream);
 }
 #else /* HAVE_LIBZ */
-int
+long
 file_seek(FILE *stream, long offset, int whence)
 {
        return fseek(stream, offset, whence);
index 78691627319ecc5e2ab6819bc75e352ce12314c1..cfda764a0740ce83b71b89170bb62e428c4dad22 100644 (file)
@@ -1,6 +1,6 @@
 /* file_wrappers.h
  *
- * $Id: file_wrappers.h,v 1.2 2000/01/22 06:22:37 guy Exp $
+ * $Id: file_wrappers.h,v 1.3 2000/01/25 04:49:55 guy Exp $
  *
  * Wiretap Library
  * Copyright (c) 1998 by Gilbert Ramirez <gram@xiexie.org>
@@ -31,7 +31,7 @@ extern int file_seek(void *stream, long offset, int whence);
 #define file_read(buf, bsize, count, file) gzread((file),(buf),((count)*(bsize)))
 #define file_write(buf, bsize, count, file) gzwrite((file),(buf),((count)*(bsize)))
 #define file_close gzclose
-#define file_tell gztell
+extern long file_tell(void *stream);
 #define file_getc gzgetc
 #define file_gets(buf, len, file) gzgets((file), (buf), (len))
 extern int file_error(void *fh);