Nicolas Cellier uploaded a new version of Network to project The Trunk:
http://source.squeak.org/trunk/Network-nice.179.mcz==================== Summary ====================
Name: Network-nice.179
Author: nice
Time: 20 July 2016, 12:19:36.925063 am
UUID: d5a82bde-b7b7-47ab-8d39-94beab819cae
Ancestors: Network-bp.178
Let VMMaker (.oscog branch) code generation work on windows.
Detail: VMMaker uses something like:
FileDirectory default pathFromURI: self sourceTree, '/spur64src'
On windows, the URI encodes drive spec letter $: into '%3A'.
This was never decoded, and then C%3A\Users\nicolas\opensmalltalk-vm\spur64src is not a good path specification and miserably fails :(
Note that DosFileDirectory class privateFullPathForURI: seems to perform some similar task, so maybe the next step will be to CLEAN UP!!!
=============== Diff against Network-bp.178 ===============
Item was changed:
----- Method: DosFileDirectory>>uriPathToPlatformPath: (in category '*network-uri') -----
uriPathToPlatformPath: aString
"Convert a URI path (w/ forward slashes) into a platform path if necessary.
Also make sure we deal properly with shares vs. drives"
+ | parts path |
+ path := aString unescapePercents.
+ parts := path findTokens: '/'.
- | parts |
- parts := aString findTokens: '/'.
(parts first endsWith: ':') ifTrue:[
"it's a drive - compose c:\foo\bar"
+ ^path allButFirst copyReplaceAll: '/' with: '\'
- ^aString allButFirst copyReplaceAll: '/' with: '\'
] ifFalse:[
"it's a share - compose \\share\foo\bar"
+ ^'\', (path copyReplaceAll: '/' with: '\')
- ^'\', (aString copyReplaceAll: '/' with: '\')
].!