Index: dll/win32/avicap32/avicap32.c =================================================================== --- dll/win32/avicap32/avicap32.c (revision 59034) +++ dll/win32/avicap32/avicap32.c (working copy) @@ -218,21 +218,24 @@ if (dwInfoSize) { Version = HeapAlloc(GetProcessHeap(), 0, dwInfoSize); + + if (Version != NULL) + { + GetFileVersionInfo(szFileName, 0, dwInfoSize, Version); - GetFileVersionInfo(szFileName, 0, dwInfoSize, Version); + if (VerQueryValueW(Version, L"\\", &Ms, &Ls)) + { + memmove(&FileInfo, Ms, Ls); + swprintf(szVersion, L"Version: %d.%d.%d.%d", + HIWORD(FileInfo.dwFileVersionMS), + LOWORD(FileInfo.dwFileVersionMS), + HIWORD(FileInfo.dwFileVersionLS), + LOWORD(FileInfo.dwFileVersionLS)); - if (VerQueryValueW(Version, L"\\", &Ms, &Ls)) - { - memmove(&FileInfo, Ms, Ls); - swprintf(szVersion, L"Version: %d.%d.%d.%d", - HIWORD(FileInfo.dwFileVersionMS), - LOWORD(FileInfo.dwFileVersionMS), - HIWORD(FileInfo.dwFileVersionLS), - LOWORD(FileInfo.dwFileVersionLS)); - - lstrcpynW(lpszVer, szVersion, cbVer); + lstrcpynW(lpszVer, szVersion, cbVer); + } + HeapFree(GetProcessHeap(), 0, Version); } - HeapFree(GetProcessHeap(), 0, Version); } }