Hi, Ive been trying to get Heroes III to work with wine and I found that it cant load some file it needs because DOSFS_GetFullPathName return the path to that file without the backslash at the end although heroes3 asked for it with a backslash at the end. it asks for .\DATA\ and the method returns <path to heroes3>\DATA <---- missing backslash in the method the last backlash is removed when no driveletter is in the requested pathname.
I'd like to know why this was implemented like this as I cannot understand the reason for it.
Thanks for your help
Enrico farmboy1@subdimension.com
On Sun, Mar 24, 2002 at 08:27:41PM +0100, Enrico Horn wrote:
Hi, Ive been trying to get Heroes III to work with wine and I found that it cant load some file it needs because DOSFS_GetFullPathName return the path to that file without the backslash at the end although heroes3 asked for it with a backslash at the end. it asks for .\DATA\ and the method returns <path to heroes3>\DATA <---- missing backslash in the method the last backlash is removed when no driveletter is in the requested pathname.
I'd like to know why this was implemented like this as I cannot understand the reason for it.
Err, it wasn't implemented like this intentionally, I guess ;)
I know that there's some trailing \ problem somewhere, and I intended to fix some functions but haven't had enough time yet.
What you want is finding out which Win32 API function returns this string to your program. Then either fix it directly in this function, or, if really appropriate, fix it in some Wine internal function, and maybe that is actually DOSFS_GetFullPathName like you said.
On Sat, 23 Mar 2002, Andreas Mohr wrote:
On Sun, Mar 24, 2002 at 08:27:41PM +0100, Enrico Horn wrote:
Hi, Ive been trying to get Heroes III to work with wine and I found that it cant load some file it needs because DOSFS_GetFullPathName return the path to that file without the backslash at the end although heroes3 asked for it with a backslash at the end. it asks for .\DATA\ and the method returns <path to heroes3>\DATA <---- missing backslash in the method the last backlash is removed when no driveletter is in the requested pathname.
I'd like to know why this was implemented like this as I cannot understand the reason for it.
Err, it wasn't implemented like this intentionally, I guess ;)
I know that there's some trailing \ problem somewhere, and I intended to fix some functions but haven't had enough time yet.
What you want is finding out which Win32 API function returns this string to your program. Then either fix it directly in this function, or, if really appropriate, fix it in some Wine internal function, and maybe that is actually DOSFS_GetFullPathName like you said.
This is Debian bug #101751 (which includes a somewhat ugly patch, it was submitted to wine-patches, but so far ignored by the wine community).
On Saturday 23 March 2002 20:57, you wrote:
I'd like to know why this was implemented like this as I cannot understand the reason for it.
Err, it wasn't implemented like this intentionally, I guess ;)
I know that there's some trailing \ problem somewhere, and I intended to fix some functions but haven't had enough time yet.
What you want is finding out which Win32 API function returns this string to your program.
the function is kernel32.GetFullPathNameA which calls DOSFS_GetFullPathName.
Then either fix it directly in this function, or, if really appropriate, fix it in some Wine internal function, and maybe that is actually DOSFS_GetFullPathName like you said.
It is. What I really want to know is if "fixing" this would cause a regression elsewhere?
Thanks for the fast reply
Enrico farmboy1@subdimension.com