file-system "system_complete()" and C:/

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

file-system "system_complete()" and C:/

Matt England
The following is a note of my developers that was attached to a bug close
report.  Is this special check for to convert "x:" to "x:/" a good practice
for the Boost file-system library usage?  Is there a better way to do this
and/or are we missing something?

-Matt


The boost system_complete() function is used to convert relative paths into
absolute paths.  For some reason, boost interprets 'c:' as an incomplete path,
and the windows boost behavior is to initially complete the path to the
working directory.  In other words 'c:' was becoming (in my case)
'c:/mydata/'.

I added a check in Client.cpp to see if the --get parameter is equal to
'x:' and if it is, convert it to 'x:/'.

_______________________________________________
Boost-users mailing list
[hidden email]
http://lists.boost.org/mailman/listinfo.cgi/boost-users
Reply | Threaded
Open this post in threaded view
|

Re: file-system "system_complete()" and C:/

Hector C.
I would actually expect conversion to "c:\mydata\" to be native in Windows. For example: "dir c:" will list the files in the working directory. If I wanted the list of files in the root directory of "c:", I have to type "dir c:\". Each logical drive has a current directory upon which the commands are operated. Even in the GUI, typing "x:" opens the current directory in drive "x:". Completing "x:" to "x:\" is not native to Windows. Perhaphs the only place where "x:" might go to "x:\" is in Windows explorer (and this is switch in the registry I believe). However, if you type "c:" in a "Save as" dialog, it opens the application's current directory in "c:".

++Hector C.

Matt England <[hidden email]> wrote:
The following is a note of my developers that was attached to a bug close
report. Is this special check for to convert "x:" to "x:/" a good practice
for the Boost file-system library usage? Is there a better way to do this
and/or are we missing something?

-Matt


The boost system_complete() function is used to convert relative paths into
absolute paths. For some reason, boost interprets 'c:' as an incomplete path,
and the windows boost behavior is to initially complete the path to the
working directory. In other words 'c:' was becoming (in my case)
'c:/mydata/'.

I added a check in Client.cpp to see if the --get parameter is equal to
'x:' and if it is, convert it to 'x:/'.

_______________________________________________
Boost-users mailing list
[hidden email]
http://lists.boost.org/mailman/listinfo.cgi/boost-users



----------------------------------


Yahoo! Mail
Use Photomail to share photos without annoying attachments.
_______________________________________________
Boost-users mailing list
[hidden email]
http://lists.boost.org/mailman/listinfo.cgi/boost-users