revert my latest change for it contain to some serous bugs and some mistake thx w3seek

svn path=/trunk/; revision=19846
This commit is contained in:
Magnus Olsen 2005-12-03 21:25:27 +00:00
parent 63c14b7666
commit deca81698a

View file

@ -20,9 +20,9 @@
*/
#include "config.h"
#include "dxdiag_private.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "dxdiag_private.h"
WINE_DEFAULT_DEBUG_CHANNEL(dxdiag);
@ -120,73 +120,21 @@ HRESULT WINAPI IDxDiagContainerImpl_GetChildContainer(PDXDIAGCONTAINER iface, LP
return E_INVALIDARG;
}
HRESULT WINAPI IDxDiagContainerImpl_GetNumberOfProps(PDXDIAGCONTAINER iface, DWORD* pdwCount)
{
IDxDiagContainerImpl *This = (IDxDiagContainerImpl *)iface;
*pdwCount = This->nSubpProperty;
TRACE("(%p)->(%ld)\n", iface, *pdwCount);
HRESULT WINAPI IDxDiagContainerImpl_GetNumberOfProps(PDXDIAGCONTAINER iface, DWORD* pdwCount) {
/* IDxDiagContainerImpl *This = (IDxDiagContainerImpl *)iface; */
FIXME("(%p, %p): stub\n", iface, pdwCount);
return S_OK;
}
HRESULT WINAPI IDxDiagContainerImpl_EnumPropNames(PDXDIAGCONTAINER iface, DWORD dwIndex, LPWSTR pwszPropName, DWORD cchPropName) {
IDxDiagContainerImpl *This = (IDxDiagContainerImpl *)iface;
if (This->pProperty == NULL)
{
This->pProperty = (Contain_Property *)HeapAlloc(GetProcessHeap(),
HEAP_ZERO_MEMORY,
sizeof(Contain_Property) *(dwIndex+1));
This->nSubpProperty = dwIndex+1;
}
else
{
if (dwIndex>=This->nSubpProperty)
{
This->pProperty = (Contain_Property *) HeapReAlloc(GetProcessHeap(),
HEAP_ZERO_MEMORY, This->pProperty,
sizeof(Contain_Property) *(dwIndex+1));
This->nSubpProperty = dwIndex+1;
}
}
lstrcpynW(pwszPropName, This->pProperty[dwIndex].pwszPropName, cchPropName);
TRACE("(%p)->(%s)\n", iface, debugstr_w(This->pProperty[dwIndex].pwszPropName));
return S_OK;
/* IDxDiagContainerImpl *This = (IDxDiagContainerImpl *)iface; */
FIXME("(%p, %lu, %s, %lu): stub\n", iface, dwIndex, debugstr_w(pwszPropName), cchPropName);
return S_OK;
}
HRESULT WINAPI IDxDiagContainerImpl_GetProp(PDXDIAGCONTAINER iface, LPCWSTR pwszPropName, VARIANT* pvarProp)
{
IDxDiagContainerImpl *This = (IDxDiagContainerImpl *)iface;
Contain_Property *propert = This->pProperty;
TRACE("(%p)->(%s, %p)\n", iface, debugstr_w(pwszPropName), pvarProp);
while (propert->pwszPropName && lstrcmpW(propert->pwszPropName, pwszPropName))
{
propert += sizeof(Contain_Property);
}
if (!propert->pwszPropName)
return E_INVALIDARG;
/* FIXME
if (property->pvarProp == VT_EMPTY)
return E_INVALIDARG;
if (property->pvarProp.vt == VT_ERROR)
return E_INVALIDARG;
*/
memcpy(pvarProp,&propert->pvarProp, sizeof(VARIANT));
HRESULT WINAPI IDxDiagContainerImpl_GetProp(PDXDIAGCONTAINER iface, LPCWSTR pwszPropName, VARIANT* pvarProp) {
/* IDxDiagContainerImpl *This = (IDxDiagContainerImpl *)iface; */
FIXME("(%p, %s, %p): stub\n", iface, debugstr_w(pwszPropName), pvarProp);
return S_OK;
}
@ -219,3 +167,4 @@ HRESULT DXDiag_CreateDXDiagContainer(REFIID riid, LPVOID *ppobj) {
container->ref = 0; /* will be inited with QueryInterface */
return IDxDiagContainerImpl_QueryInterface((PDXDIAGCONTAINER)container, riid, ppobj);
}