[MSVFW32]

* Sync with Wine 1.7.1.
CORE-7469

svn path=/trunk/; revision=60336
This commit is contained in:
Amine Khaldi 2013-09-23 11:36:07 +00:00
parent ffa1fa76dc
commit 9333cb42c6
4 changed files with 20 additions and 12 deletions

View file

@ -1,21 +1,18 @@
include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
add_definitions(-D__WINESRC__)
add_definitions(-D_WINE)
include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
spec2def(msvfw32.dll msvfw32.spec ADD_IMPORTLIB)
list(APPEND SOURCE
mciwnd.c
msvideo_main.c
drawdib.c
rsrc.rc
${CMAKE_CURRENT_BINARY_DIR}/msvfw32_stubs.c
${CMAKE_CURRENT_BINARY_DIR}/msvfw32.def)
add_library(msvfw32 SHARED ${SOURCE})
add_library(msvfw32 SHARED ${SOURCE} rsrc.rc)
set_module_type(msvfw32 win32dll)
target_link_libraries(msvfw32 wine)
add_importlibs(msvfw32 winmm version comctl32 user32 gdi32 advapi32 msvcrt kernel32 ntdll)
add_importlibs(msvfw32 winmm comctl32 user32 gdi32 advapi32 msvcrt kernel32 ntdll)
add_cd_file(TARGET msvfw32 DESTINATION reactos/system32 FOR all)

View file

@ -407,9 +407,11 @@ HIC VFWAPI ICOpen(DWORD fccType, DWORD fccHandler, UINT wMode)
driver = reg_driver_list;
while(driver)
if (!compare_fourcc(fccType, driver->fccType) &&
!compare_fourcc(fccHandler, driver->fccHandler))
!compare_fourcc(fccHandler, driver->fccHandler)) {
fccType = driver->fccType;
fccHandler = driver->fccHandler;
break;
else
} else
driver = driver->next;
if (driver && driver->proc)
@ -430,7 +432,13 @@ HIC VFWAPI ICOpen(DWORD fccType, DWORD fccHandler, UINT wMode)
icopen.dnDevNode = 0; /* FIXME */
if (!driver) {
/* The driver is registered in the registry */
/* normalize to lower case as in 'vidc' */
((char*)&fccType)[0] = tolower(((char*)&fccType)[0]);
((char*)&fccType)[1] = tolower(((char*)&fccType)[1]);
((char*)&fccType)[2] = tolower(((char*)&fccType)[2]);
((char*)&fccType)[3] = tolower(((char*)&fccType)[3]);
icopen.fccType = fccType;
/* Seek the driver in the registry */
fourcc_to_string(codecname, fccType);
codecname[4] = '.';
fourcc_to_string(codecname + 5, fccHandler);
@ -534,7 +542,6 @@ LRESULT VFWAPI ICGetInfo(HIC hic, ICINFO *picinfo, DWORD cb)
TRACE("(%p,%p,%d)\n", hic, picinfo, cb);
whic = MSVIDEO_GetHicPtr(hic);
if (!whic) return ICERR_BADHANDLE;
if (!picinfo) return MMSYSERR_INVALPARAM;
@ -1370,7 +1377,7 @@ LPVOID VFWAPI ICSeqCompressFrame(PCOMPVARS pc, UINT uiFlags, LPVOID lpBits, BOOL
icComp->lFrameNum = pc->lFrame++;
icComp->lpOutput = pc->lpBitsOut;
icComp->lpPrev = pc->lpBitsPrev;
ret = ICSendMessage(pc->hic, ICM_COMPRESS, (DWORD_PTR)icComp, sizeof(icComp));
ret = ICSendMessage(pc->hic, ICM_COMPRESS, (DWORD_PTR)icComp, sizeof(*icComp));
if (icComp->dwFlags & AVIIF_KEYFRAME)
{
@ -1509,7 +1516,10 @@ static BOOL GetFileNamePreview(LPVOID lpofn,BOOL bSave,BOOL bUnicode)
fnGetFileName = (LPVOID)GetProcAddress(hComdlg32, szFunctionName);
if (fnGetFileName == NULL)
{
FreeLibrary(hComdlg32);
return FALSE;
}
/* FIXME: need to add OFN_ENABLEHOOK and our own handler */
ret = fnGetFileName(lpofn);

View file

@ -44,6 +44,7 @@ typedef struct tagWINE_HIC {
struct tagWINE_HIC* next;
} WINE_HIC;
extern HMODULE MSVFW32_hModule DECLSPEC_HIDDEN;
#define IDC_CONFIGURE 882
#define IDC_ABOUT 883

View file

@ -128,7 +128,7 @@ reactos/dll/win32/mssip32 # Synced to Wine-1.7.1
reactos/dll/win32/mstask # Synced to Wine-1.7.1
reactos/dll/win32/msvcrt20 # Out of sync
reactos/dll/win32/msvcrt40 # Out of sync
reactos/dll/win32/msvfw32 # Autosync
reactos/dll/win32/msvfw32 # Synced to Wine-1.7.1
reactos/dll/win32/msvidc32 # Autosync
reactos/dll/win32/msxml # Synced to Wine-1.5.19
reactos/dll/win32/msxml2 # Synced to Wine-1.5.19