X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libs%2Floader%2Fwin32.c;h=3581d3e6ceae231edee4e3fbaa462480d11aba1e;hb=74da7a424fdcaea34fed38e37f844dbeade9a3b3;hp=08fd21da29fe812fc25261a4a48412be077b342f;hpb=98622388c1b02f46c29fd7e46a1750396d3eae03;p=vlc diff --git a/libs/loader/win32.c b/libs/loader/win32.c index 08fd21da29..3581d3e6ce 100644 --- a/libs/loader/win32.c +++ b/libs/loader/win32.c @@ -3936,7 +3936,8 @@ static int expdelete(void* memory) */ typedef struct __attribute__((__packed__)) { - char hay[0x40]; + char hay[0x3C]; + void* pbUnknown; //0x3C unsigned long cbFormat; //0x40 char* pbFormat; //0x44 } MY_MEDIA_TYPE; @@ -3958,13 +3959,19 @@ static HRESULT WINAPI expMoInitMediaType(MY_MEDIA_TYPE* dest, DWORD cbFormat) { if (!dest) return E_POINTER; - memset(dest, 0, sizeof(MY_MEDIA_TYPE)); + + dest->pbUnknown = NULL; + dest->cbFormat = cbFormat; if (cbFormat) { dest->pbFormat = (char*) my_mreq(cbFormat, 0); if (!dest->pbFormat) return E_OUTOFMEMORY; } + else + { + dest->pbFormat=NULL; + } return S_OK; } static HRESULT WINAPI expMoCreateMediaType(MY_MEDIA_TYPE** dest, DWORD cbFormat)