Description
Seems that there is a missing "else" in the GetItemObject code.
Right now if m_pShellFolderViewDual is NULL it will assign CDefViewDual_Constructor() object to hr, and shortly afterwards will assign m_pShellFolderViewDual->QueryInterface(riid, ppvOut); to it. Leading to a dereference and also overwriting the previous value.
CID 1363709