|
@@ -109,20 +109,22 @@ static inline char *realpath(const char *path, char *resolved_path)
|
|
return resolved_path;
|
|
return resolved_path;
|
|
}
|
|
}
|
|
|
|
|
|
-/* ??? Mingw appears to export _lock_file and _unlock_file as the functions
|
|
|
|
- * with which to lock a stdio handle. But something is wrong in the markup,
|
|
|
|
- * either in the header or the library, such that we get undefined references
|
|
|
|
- * to "_imp___lock_file" etc when linking. Since we seem to have no other
|
|
|
|
- * alternative, and the usage within the logging functions isn't critical,
|
|
|
|
- * ignore FILE locking.
|
|
|
|
|
|
+/*
|
|
|
|
+ * Older versions of MinGW do not import _lock_file and _unlock_file properly.
|
|
|
|
+ * This was fixed for v6.0.0 with commit b48e3ac8969d.
|
|
*/
|
|
*/
|
|
-
|
|
|
|
static inline void qemu_flockfile(FILE *f)
|
|
static inline void qemu_flockfile(FILE *f)
|
|
{
|
|
{
|
|
|
|
+#ifdef HAVE__LOCK_FILE
|
|
|
|
+ _lock_file(f);
|
|
|
|
+#endif
|
|
}
|
|
}
|
|
|
|
|
|
static inline void qemu_funlockfile(FILE *f)
|
|
static inline void qemu_funlockfile(FILE *f)
|
|
{
|
|
{
|
|
|
|
+#ifdef HAVE__LOCK_FILE
|
|
|
|
+ _unlock_file(f);
|
|
|
|
+#endif
|
|
}
|
|
}
|
|
|
|
|
|
/* We wrap all the sockets functions so that we can
|
|
/* We wrap all the sockets functions so that we can
|