mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-10 11:59:58 -05:00
Initial community commit
This commit is contained in:
23
Src/Plugins/Input/in_wmvdrm/directdraw.cpp
Normal file
23
Src/Plugins/Input/in_wmvdrm/directdraw.cpp
Normal file
@@ -0,0 +1,23 @@
|
||||
#include "main.h"
|
||||
#include "directdraw.h"
|
||||
|
||||
HRESULT (WINAPI *_DirectDrawCreate)(GUID FAR *lpGUID, LPDIRECTDRAW FAR *lplpDD, IUnknown FAR *pUnkOuter) = 0;
|
||||
|
||||
HRESULT DDrawCreate(GUID FAR *lpGUID, LPDIRECTDRAW FAR *lplpDD, IUnknown FAR *pUnkOuter)
|
||||
{
|
||||
static int a = 0;
|
||||
if (!_DirectDrawCreate && !a)
|
||||
{
|
||||
a++;
|
||||
HINSTANCE h = LoadLibrary(L"ddraw.dll");
|
||||
if (h)
|
||||
{
|
||||
*(void**)&_DirectDrawCreate = (void*)GetProcAddress(h, "DirectDrawCreate");
|
||||
}
|
||||
}
|
||||
|
||||
if (_DirectDrawCreate)
|
||||
return _DirectDrawCreate(lpGUID, lplpDD, pUnkOuter);
|
||||
else
|
||||
return S_OK; // TODO: uhhh no this should be an error :)
|
||||
}
|
Reference in New Issue
Block a user