X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3d55f45e94a243fef267d466f249fbb18835ecdc..43f4e852a1b2ac37c3db6a2b87315192ac549191:/src/msw/mediactrl_am.cpp?ds=sidebyside diff --git a/src/msw/mediactrl_am.cpp b/src/msw/mediactrl_am.cpp index 95341cbdff..227df16d5d 100644 --- a/src/msw/mediactrl_am.cpp +++ b/src/msw/mediactrl_am.cpp @@ -1540,14 +1540,14 @@ wxString wxAMMediaBackend::GetErrorString(HRESULT hrdsv) { return wxString::Format(wxT("DirectShow error \"%s\" \n") wxT("(numeric %X)\n") - wxT("occured"), + wxT("occurred"), szError, (int)hrdsv); } else { return wxString::Format(wxT("Unknown error \n") wxT("(numeric %X)\n") - wxT("occured"), + wxT("occurred"), (int)hrdsv); } } @@ -2020,7 +2020,15 @@ wxLongLong wxAMMediaBackend::GetDuration() case S_OK: // outDuration is in seconds, we need milliseconds - return static_cast(outDuration * 1000); +#ifdef wxLongLong_t + return static_cast(outDuration * 1000); +#else + // In principle it's possible to have video of duration greater + // than ~1193 hours which corresponds LONG_MAX in milliseconds so + // cast to wxLongLong first and multiply by 1000 only then to avoid + // the overflow (resulting in maximal duration of ~136 years). + return wxLongLong(static_cast(outDuration)) * 1000; +#endif } }