From: Akihiro Sagawa <sagawa.aki@gmail.com> --- dlls/mciavi32/mciavi.c | 4 ++-- dlls/winmm/tests/mci.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dlls/mciavi32/mciavi.c b/dlls/mciavi32/mciavi.c index a726d63b6d0..ef76243c65f 100644 --- a/dlls/mciavi32/mciavi.c +++ b/dlls/mciavi32/mciavi.c @@ -760,12 +760,12 @@ static DWORD MCIAVI_mciSeek(UINT wDevID, DWORD dwFlags, LPMCI_SEEK_PARMS lpParms if (dwFlags & MCI_TO) { position = MCIAVI_ConvertTimeFormatToFrame(wma, lpParms->dwTo); - if (position >= wma->dwPlayableVideoFrames) + if (position > wma->dwPlayableVideoFrames) return MCIERR_OUTOFRANGE; } else if (dwFlags & MCI_SEEK_TO_START) { position = 0; } else { - position = wma->dwPlayableVideoFrames - 1; + position = wma->dwPlayableVideoFrames; } if (dwFlags & MCI_TEST) return 0; diff --git a/dlls/winmm/tests/mci.c b/dlls/winmm/tests/mci.c index e9c2b11173d..0b49a6e06e8 100644 --- a/dlls/winmm/tests/mci.c +++ b/dlls/winmm/tests/mci.c @@ -1822,7 +1822,7 @@ static void test_avi_end_position(void) /* test "seek to" range */ parm.seek.dwTo = frames; err = mciSendCommandW(id, MCI_SEEK, MCI_TO, (DWORD_PTR)&parm); - todo_wine ok(!err, "mciCommand seek to %lu: %s\n", parm.seek.dwTo, dbg_mcierr(err)); + ok(!err, "mciCommand seek to %lu: %s\n", parm.seek.dwTo, dbg_mcierr(err)); parm.seek.dwTo = frames + 1; err = mciSendCommandW(id, MCI_SEEK, MCI_TO, (DWORD_PTR)&parm); @@ -1840,7 +1840,7 @@ static void test_avi_end_position(void) parm.status.dwReturn = 0xFEEDABAD; err = mciSendCommandW(id, MCI_STATUS, MCI_STATUS_ITEM, (DWORD_PTR)&parm); ok(!err, "mciCommand status position: %s\n", dbg_mcierr(err)); - todo_wine ok(parm.status.dwReturn == frames, "Got %Iu, expected %Iu\n", parm.status.dwReturn, frames); + ok(parm.status.dwReturn == frames, "Got %Iu, expected %Iu\n", parm.status.dwReturn, frames); /* the start position equals to zero */ err = mciSendCommandW(id, MCI_SEEK, MCI_SEEK_TO_START | MCI_WAIT, (DWORD_PTR)&parm); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10089