Commit f0f00f7c1648daa9b75e7ea97b9f84b78d8a6d9c

Carlo Bramini 2021-08-19T22:14:42

* builds/windows/ftsystem.c (FT_Stream_Open): Support legacy Windows.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
diff --git a/builds/windows/ftsystem.c b/builds/windows/ftsystem.c
index ac1d2e7..65c37aa 100644
--- a/builds/windows/ftsystem.c
+++ b/builds/windows/ftsystem.c
@@ -226,7 +226,15 @@
       return FT_THROW( Cannot_Open_Resource );
     }
 
+#if defined _WIN32_WCE || defined _WIN32_WINDOWS || \
+    (defined _WIN32_WINNT && _WIN32_WINNT <= 0x0400)
+    /* Use GetFileSize() for legacy Windows */
+    size.u.LowPart = GetFileSize( file, (DWORD *)&size.u.HighPart );
+    if ( size.u.LowPart == INVALID_FILE_SIZE && GetLastError() != NO_ERROR )
+#else
+    /* Use GetFileSizeEx() for modern Windows */
     if ( GetFileSizeEx( file, &size ) == FALSE )
+#endif
     {
       FT_ERROR(( "FT_Stream_Open:" ));
       FT_ERROR(( " could not retrieve size of file `%s'\n", filepathname ));