NULL is a valid argument as handle for GetFileVersionInfoSize32A.
authorUlrich Weigand <weigand@informatik.uni-erlangen.de>
Tue, 9 Feb 1999 14:18:57 +0000 (14:18 +0000)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 9 Feb 1999 14:18:57 +0000 (14:18 +0000)
dlls/version/info.c

index 146eead..3835eae 100644 (file)
@@ -264,7 +264,7 @@ void ConvertVersionInfo32To16( VS_VERSION_INFO32 *info32,
 DWORD WINAPI GetFileVersionInfoSize32A( LPCSTR filename, LPDWORD handle )
 {
     VS_FIXEDFILEINFO *vffi;
-    DWORD len, ret;
+    DWORD len, ret, offset;
     BYTE buf[144];
 
     TRACE( ver, "(%s,%p)\n", debugstr_a(filename), handle );
@@ -272,15 +272,16 @@ DWORD WINAPI GetFileVersionInfoSize32A( LPCSTR filename, LPDWORD handle )
     len = GetFileResourceSize32( filename,
                                  MAKEINTRESOURCE32A(VS_FILE_INFO),
                                  MAKEINTRESOURCE32A(VS_VERSION_INFO),
-                                 handle );
+                                 &offset );
     if (!len) return 0;
 
     ret = GetFileResource32( filename,
                              MAKEINTRESOURCE32A(VS_FILE_INFO),
                              MAKEINTRESOURCE32A(VS_VERSION_INFO),
-                             *handle, sizeof( buf ), buf );
+                             offset, sizeof( buf ), buf );
     if (!ret) return 0;
 
+    if ( handle ) *handle = offset;
     
     if ( VersionInfoIs16( buf ) )
         vffi = (VS_FIXEDFILEINFO *)VersionInfo16_Value( (VS_VERSION_INFO16 *)buf );