[Bug 924] - WinZip 8.1 won't start (regression)

wine-bugs at winehq.com wine-bugs at winehq.com
Sat Aug 10 12:42:51 CDT 2002


http://bugs.winehq.com/show_bug.cgi?id=924





------- Additional Comments From dclark at akamail.com  2002-08-10 12:42 -------
This problem is being caused by this short bit of code in the function
SHGetFileInfoA(). This function starts by setting pidl to null. Then WinZip
calls this function with the flags 0x4115, which includes
SHGFI_USEFILEATTRIBUTES but not SHGFI_PIDL. With that combination of flags, this
short bit of code will always fail (return FALSE).

	if (flags & SHGFI_PIDL) {
	    pidl = ILClone((LPCITEMIDLIST)path);
	} else if (!(flags & SHGFI_USEFILEATTRIBUTES)) {
	    hr = SHILCreateFromPathA(path, &pidl, &dwAttributes);
	}

	/* get the parent shellfolder */
	if (pidl) {
	    hr = SHBindToParent( pidl, &IID_IShellFolder, (LPVOID*)&psfParent, &pidlLast);
	    ILFree(pidl);
	} else {
	    ERR("pidl is null!\n");
	    return FALSE;
	}

Changing that last "else" to:
	} else if (!(flags & SHGFI_USEFILEATTRIBUTES)) {

fixes this.


DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://bugs.winehq.com/show_bug.cgi?id=924>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.



More information about the wine-bugs mailing list