[PATCH] dmloader: Only use the GUID when looking for cached objects.
Michael Stefaniuc
mstefani at winehq.org
Thu Nov 21 14:27:45 CST 2019
Hello Alistair,
any reason you remove that code?
I do see that code being hit by some apps (Ludwig3, the DirectMusic
samples from the DirectX 8.1b SDK).
Also we have similar code in, IDirectMusicLoaderImpl_CacheObject() and
IDirectMusicLoaderImpl_ReleaseObject().
thanks
bye
michael
On 11/21/19 8:40 AM, Alistair Leslie-Hughes wrote:
> ---
> dlls/dmloader/loader.c | 50 +-----------------------------------------
> 1 file changed, 1 insertion(+), 49 deletions(-)
>
> diff --git a/dlls/dmloader/loader.c b/dlls/dmloader/loader.c
> index 0da8323e7e5..c4c54412e12 100644
> --- a/dlls/dmloader/loader.c
> +++ b/dlls/dmloader/loader.c
> @@ -208,55 +208,7 @@ static HRESULT WINAPI IDirectMusicLoaderImpl_GetObject(IDirectMusicLoader8 *ifac
> TRACE(": not loaded yet\n");
> pObjectEntry = pExistingEntry;
> }
> - }
> - else if ((pDesc->dwValidData & (DMUS_OBJ_FILENAME | DMUS_OBJ_FULLPATH)) &&
> - (pExistingEntry->Desc.dwValidData & (DMUS_OBJ_FILENAME | DMUS_OBJ_FULLPATH)) &&
> - !wcsncmp (pDesc->wszFileName, pExistingEntry->Desc.wszFileName, DMUS_MAX_FILENAME)) {
> - TRACE(": found it by fullpath filename\n");
> - if (pExistingEntry->Desc.dwValidData & DMUS_OBJ_LOADED) {
> - TRACE(": already loaded\n");
> - return IDirectMusicObject_QueryInterface (pExistingEntry->pObject, riid, ppv);
> - } else {
> - TRACE(": not loaded yet\n");
> - pObjectEntry = pExistingEntry;
> - }
> - }
> - else if ((pDesc->dwValidData & (DMUS_OBJ_NAME | DMUS_OBJ_CATEGORY)) &&
> - (pExistingEntry->Desc.dwValidData & (DMUS_OBJ_NAME | DMUS_OBJ_CATEGORY)) &&
> - !wcsncmp (pDesc->wszName, pExistingEntry->Desc.wszName, DMUS_MAX_NAME) &&
> - !wcsncmp (pDesc->wszCategory, pExistingEntry->Desc.wszCategory, DMUS_MAX_CATEGORY)) {
> - TRACE(": found it by name and category\n");
> - if (pExistingEntry->Desc.dwValidData & DMUS_OBJ_LOADED) {
> - TRACE(": already loaded\n");
> - return IDirectMusicObject_QueryInterface (pExistingEntry->pObject, riid, ppv);
> - } else {
> - TRACE(": not loaded yet\n");
> - pObjectEntry = pExistingEntry;
> - }
> - }
> - else if ((pDesc->dwValidData & DMUS_OBJ_NAME) &&
> - (pExistingEntry->Desc.dwValidData & DMUS_OBJ_NAME) &&
> - !wcsncmp (pDesc->wszName, pExistingEntry->Desc.wszName, DMUS_MAX_NAME)) {
> - TRACE(": found it by name\n");
> - if (pExistingEntry->Desc.dwValidData & DMUS_OBJ_LOADED) {
> - TRACE(": already loaded\n");
> - return IDirectMusicObject_QueryInterface (pExistingEntry->pObject, riid, ppv);
> - } else {
> - TRACE(": not loaded yet\n");
> - pObjectEntry = pExistingEntry;
> - }
> - }
> - else if ((pDesc->dwValidData & DMUS_OBJ_FILENAME) &&
> - (pExistingEntry->Desc.dwValidData & DMUS_OBJ_FILENAME) &&
> - !wcsncmp (pDesc->wszFileName, pExistingEntry->Desc.wszFileName, DMUS_MAX_FILENAME)) {
> - TRACE(": found it by filename\n");
> - if (pExistingEntry->Desc.dwValidData & DMUS_OBJ_LOADED) {
> - TRACE(": already loaded\n");
> - return IDirectMusicObject_QueryInterface (pExistingEntry->pObject, riid, ppv);
> - } else {
> - TRACE(": not loaded yet\n");
> - pObjectEntry = pExistingEntry;
> - }
> + break;
> }
> }
>
>
More information about the wine-devel
mailing list