Am 10.03.2012 13:11, schrieb Andreas Färber:
Am 10.03.2012 11:14, schrieb Stefan Weil:
MinGW-w64 already defines lseek and ftruncate (and uses the 64 bit
variants). The conditional compilation avoids redefinitions
(which would be wrong) and compiler warnings.

Signed-off-by: Stefan Weil<s...@weilnetz.de>
---
  qemu-common.h |    8 ++++++--
  1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/qemu-common.h b/qemu-common.h
index dbfce6f..b0fdf5c 100644
--- a/qemu-common.h
+++ b/qemu-common.h
@@ -93,9 +93,13 @@ typedef int (*fprintf_function)(FILE *f, const char *fmt, 
...)

  #ifdef _WIN32
  #define fsync _commit
-#define lseek _lseeki64
+#if !defined(lseek)
+# define lseek _lseeki64
+#endif
  int qemu_ftruncate64(int, int64_t);
-#define ftruncate qemu_ftruncate64
+#if !defined(ftruncate)
+# define ftruncate qemu_ftruncate64
+#endif
lseek looks okay to me, but did you check that ftruncate and
qemu_ftruncate64 behave the same?

Andreas

qemu_ftruncate64 was added in 1996. It is only used for MinGW32,
and maybe not even needed there, because it is simply a 64 bit
implementation of ftruncate. Eliminating qemu_ftruncate64
might be handled in a separate patch.

The MinGW32 and MinGW-w64 functions ftruncate64 should be sufficient,
and MinGW-w64 uses #define ftruncate ftruncate64.

Regards,
Stefan


Reply via email to