http://bugs.winehq.org/show_bug.cgi?id=13838
--- Comment #36 from max@veneto.com 2008-07-04 17:58:01 --- (In reply to comment #35)
(In reply to comment #33)
Well, if you think that's more logical return the same stuff in 2 different ways.....
The two pieces of functionality you are referring to are completely separate. It's not necessarily logical for them to return different things, but it's not illogical if they do. They are not comparable.
I don't agree. They maybe come from separate functionalities, but you're indeed asking installer to locate a folder path in both cases. And I expect to get it in a consistent way in both cases. I'd agree with you if you where speaking about shell path functions and msi path functions in terms of each other. In shell path, the convention is to return path WITHOUT backslash. In msi, there's big evidence that there's a convention on returning path WITH backslash. You can easily see in code I pasted before; for global properties you READ from REGISTRY a path an ADD a backslash. In local properties, you READ from REGISTRY a path and you simply forgot to add the backslash, point.
Autocad installer does make the assumption that msi paths are returned WITH backslash and act on consequence. I could agree that an installer should be a bit more error proof, but windows is full of such cases. Even agreeing on tests many times, I really don't see the point on loosing time to make a one where stuffs can't simply be different. The best test here is just autocad installer, having excluded any alternative, you can easily see looking at msi code.
Btw, autocad installer expects it WITH a trailing backslash, so it must be like that. As I excluded a registry difference (checked with windows one...) and a path function difference (on that one i DID make a test and it's right, without the backslash), the only place on which the backslash can appear is here.
I never said the fix was wrong. I said the fix has to be backed up by a test.
And, if somebody added backslashes in set_installer_properties() there should be a reason.....
There is a backslash because the tests prove there should be a backslash.
I even don't know if there's a test for it, I haven't looked at that. But I'm pretty sure that there's NO test that proves the opposite for local properties. As I said, that one is one of RARE cases where I think making a testcase is just loosing time, in particular if I've got to learn all MSI mechanics to demonstrate something about I'm 100% sure.
Max