On Wed Aug 14 17:21:18 2024 +0000, Elizabeth Figura wrote:
3/3 still needs to be fixed up to 1/3 where the class is introduced, including the actxprxy parts. There's also a whitespace error introduced in 2/3. Also, I'm just now noticing...
+HRESULT __RPC_STUB IEnumObjects_Next_Stub(IEnumObjects *This, ULONG
celt, REFIID riid, void **rgelt, ULONG *pceltFetched)
+{
- HRESULT hr;
- TRACE("(%p)->(%ld, %p, %p, %p)\n", This, celt,
debugstr_guid(riid), rgelt, pceltFetched);
- *pceltFetched = 0;
- hr = IEnumObjects_Next(This, celt, riid, rgelt, pceltFetched);
- if (hr == S_OK) *pceltFetched = celt;
- return hr;
+}
The "*pceltFetched = celt" line looks very wrong, and I don't think that line should be necessary at all. It was copied from IEnumShellItems, but that also looks wrong.
I can't see anything obviously wrong in v8 3/3(*). Do you want 3/3 merged into 1/3?
And yeah, that looks strange. Not exactly wrong - S_OK means it fetched as many items as it asked for, so that'll just write the value that's already there (unless the Next impl is buggy or something) - but certainly strange. Yeah, better remove it until and unless proven necessary.
(*) actually 3/4, but that last one's a merge commit so let's pretend it doesn't exist. Rebase and remove it.