[Bug 5348] Adobe Photoshop CS2 install fails.
http://bugs.winehq.org/show_bug.cgi?id=5348 ------- Additional Comments From truiken(a)gmail.com 2007-30-04 13:35 -------
From bug 5768:
------- Additional Comment #7 From Mike McCormack 2007-01-11 20:30 ------- The "AMT_WriteRemoveFileEntry" action problem is a bug in MsiGetPropertyA that we don't emulate. Adobe products use MsiGetPropertyA in custom actions to fetch the value of various properties like this: char *get_prop( const char *name ) { UINT r; DWORD sz; char *str; /* sz is meant to be the size in TCHARs excluding nul */ r = MsiGetPropertyA( handle, name, NULL, &sz); if (r != ERROR_SUCCESS || sz == 0) return NULL; /* sz would be too short here.... */ str = HeapAlloc(GetProcessHeap(), 0, sz); MsiGetPropertyA( handle, name, NULL, &sz); if (r != ERROR_SUCCESS || sz == 0) goto error; return str; error: /* log a message and fail */ ... } The above code works in the installer, but we have a number of test cases showing that it shouldn't. The code is run in the context of a custom action. After writing a test case for the above code in a custom action, the problem was apparent. MsiGetPropertyA has a bug in this case; it returns the size of the wide string in bytes. eg. if the property value is "Photoshop.dll" it returns 26, not 13, so the above code works. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
participants (1)
-
Wine Bugs