Jörg Höhle : msvfw32: MCI Step is like Seek.
Alexandre Julliard
julliard at winehq.org
Wed Mar 17 12:19:06 CDT 2010
Module: wine
Branch: master
Commit: ce96eb790726c72bb70bbd2b274f27fc619502e6
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ce96eb790726c72bb70bbd2b274f27fc619502e6
Author: Jörg Höhle <hoehle at users.sourceforge.net>
Date: Tue Mar 16 19:14:38 2010 +0100
msvfw32: MCI Step is like Seek.
---
dlls/msvfw32/mciwnd.c | 29 ++++++++---------------------
1 files changed, 8 insertions(+), 21 deletions(-)
diff --git a/dlls/msvfw32/mciwnd.c b/dlls/msvfw32/mciwnd.c
index ff8a036..64a19ca 100644
--- a/dlls/msvfw32/mciwnd.c
+++ b/dlls/msvfw32/mciwnd.c
@@ -1298,30 +1298,23 @@ end_of_mci_open:
}
case MCI_SEEK:
+ case MCI_STEP:
{
- MCI_SEEK_PARMS mci_seek;
-
- switch (lParam)
- {
- case MCIWND_START:
- lParam = SendMessageW(hWnd, MCIWNDM_GETSTART, 0, 0);
- break;
-
- case MCIWND_END:
- lParam = SendMessageW(hWnd, MCIWNDM_GETEND, 0, 0);
- break;
- }
+ MCI_SEEK_PARMS mci_seek; /* Layout is useable as MCI_XYZ_STEP_PARMS */
+ DWORD flags = MCI_STEP == wMsg ? 0 :
+ MCIWND_START == lParam ? MCI_SEEK_TO_START :
+ MCIWND_END == lParam ? MCI_SEEK_TO_END : MCI_TO;
mci_seek.dwTo = lParam;
- mwi->lasterror = mciSendCommandW(mwi->mci, MCI_SEEK,
- MCI_TO, (DWORD_PTR)&mci_seek);
+ mwi->lasterror = mciSendCommandW(mwi->mci, wMsg,
+ flags, (DWORD_PTR)&mci_seek);
if (mwi->lasterror)
{
MCIWND_notify_error(mwi);
return mwi->lasterror;
}
/* update window to reflect the state */
- InvalidateRect(hWnd, NULL, TRUE);
+ else InvalidateRect(hWnd, NULL, TRUE);
return 0;
}
@@ -1364,15 +1357,9 @@ end_of_mci_open:
}
case MCI_PAUSE:
- case MCI_STEP:
case MCI_STOP:
case MCI_RESUME:
mci_generic_command(mwi, wMsg);
- if (wMsg == MCI_STEP && !mwi->lasterror)
- {
- /* update window to reflect the state */
- InvalidateRect(hWnd, NULL, TRUE);
- }
return mwi->lasterror;
case MCI_CONFIGURE:
More information about the wine-cvs
mailing list