[prev in list] [next in list] [prev in thread] [next in thread]
List: wine-devel
Subject: Re: [PATCH 4/5] d3dx9_36: Implement ID3DXFileEnumObjectImpl_GetChildren
From: Christian Costa <titan.costa () gmail ! com>
Date: 2012-10-25 8:57:27
Message-ID: CAMo6X8bLudoc25eQQgJKK=7D9LmA9xBiLryN18VuSMt9_Eegjw () mail ! gmail ! com
[Download RAW message or body]
[Attachment #2 (multipart/alternative)]
2012/10/25 Nikolay Sivov <bunglehead@gmail.com>
> On 10/25/2012 10:34, Christian Costa wrote:
>
>>
>> +
>> +static HRESULT WINAPI ID3DXFileDataImpl_Create(**IDirectXFileObject
>> *dxfile_object, ID3DXFileData **ret_iface)
>> +{
>> + ID3DXFileDataImpl *object;
>> +
>> + TRACE("(%p, %p)\n", dxfile_object, ret_iface);
>> +
>> + *ret_iface = NULL;
>> +
>> + object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY,
>> sizeof(*object));
>> + if (!object)
>> + {
>> + ERR("Out of memory\n");
>> + return E_OUTOFMEMORY;
>> + }
>> +
>> + object->ID3DXFileData_iface.**lpVtbl = &ID3DXFileData_Vtbl;
>> + object->ref = 1;
>> + object->dxfile_object = (IDirectXFileData*)dxfile_**object;
>> +
>> + *ret_iface = &object->ID3DXFileData_iface;
>> +
>> + return S_OK;
>> +}
>> +
>>
> You don't need WINAPI for it.
>
> + ret = ID3DXFileDataImpl_Create((**IDirectXFileObject*)data_**object,
>> &object->children[object->nb_**children]);
>>
> It seems you're casting it back and forth, is it possible to use proper
> type for data_object?
Because in another serie ID3DXFileDataImpl_Create will be called in another
place with a FileObject and ID3DXFileDataImpl_Create
will really deals with that FileObject.
>
> + {
>> + (&object->ID3DXFileEnumObject_**iface)->lpVtbl->Release(&**
>> object->ID3DXFileEnumObject_**iface);
>>
> Hmm, what's wrong with object->ID3DXFileEnumObject_**iface.lpVtbl->Release
> ?
>
What do you mean ?
[Attachment #5 (text/html)]
<br><br><div class="gmail_quote">2012/10/25 Nikolay Sivov <span dir="ltr"><<a \
href="mailto:bunglehead@gmail.com" \
target="_blank">bunglehead@gmail.com</a>></span><br><blockquote \
class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex"> <div class="HOEnZb"><div class="h5">On 10/25/2012 10:34, \
Christian Costa wrote:<br> <blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"> <br>
+<br>
+static HRESULT WINAPI ID3DXFileDataImpl_Create(<u></u>IDirectXFileObject \
*dxfile_object, ID3DXFileData **ret_iface)<br> +{<br>
+ ID3DXFileDataImpl *object;<br>
+<br>
+ TRACE("(%p, %p)\n", dxfile_object, ret_iface);<br>
+<br>
+ *ret_iface = NULL;<br>
+<br>
+ object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));<br>
+ if (!object)<br>
+ {<br>
+ ERR("Out of memory\n");<br>
+ return E_OUTOFMEMORY;<br>
+ }<br>
+<br>
+ object->ID3DXFileData_iface.<u></u>lpVtbl = &ID3DXFileData_Vtbl;<br>
+ object->ref = 1;<br>
+ object->dxfile_object = (IDirectXFileData*)dxfile_<u></u>object;<br>
+<br>
+ *ret_iface = &object->ID3DXFileData_iface;<br>
+<br>
+ return S_OK;<br>
+}<br>
+<br>
</blockquote></div></div>
You don't need WINAPI for it.<div class="im"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex"> + ret = \
ID3DXFileDataImpl_Create((<u></u>IDirectXFileObject*)data_<u></u>object, \
&object->children[object->nb_<u></u>children]);<br> </blockquote></div>
It seems you're casting it back and forth, is it possible to use proper type for \
data_object?</blockquote><div> </div><div>Because in another serie \
ID3DXFileDataImpl_Create will be called in another place with a FileObject and \
ID3DXFileDataImpl_Create</div> <div>will really deals with that \
FileObject.</div><blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"> <br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc \
solid;padding-left:1ex"> + {<br>
+ (&object->ID3DXFileEnumObject_<u></u>iface)->lpVtbl->Release(&<u></u>object->ID3DXFileEnumObject_<u></u>iface);<br>
</blockquote></div>
Hmm, what's wrong with \
object->ID3DXFileEnumObject_<u></u>iface.lpVtbl->Release \
?<br></blockquote><div>What do you mean ? </div></div><br>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic