|
2017-05-01
| ||
| 20:25 | [f9fe90d0fa] [file join] normalization. See filesystem-1.52* check-in: a8e5699f86 user: dgp tags: trunk | |
| 20:25 | [f9fe90d0fa] [file join] normalization. See filesystem-1.52* check-in: c66a1bfbd9 user: dgp tags: core-8-6-branch | |
| 20:24 | • Closed ticket [f9fe90d0fa]: Inconsistent handling of leading // plus 6 other changes artifact: 2bc6e6938b user: dgp | |
| 20:23 | [f9fe90d0fa] [file join] normalization. See filesystem-1.52* check-in: 650c12161a user: dgp tags: core-8-5-branch | |
| 16:12 | • Ticket [f9fe90d0fa] Inconsistent handling of leading // status still Open with 3 other changes artifact: 846c9e24c9 user: dgp | |
|
2017-04-29
| ||
| 11:05 | • Ticket [f9fe90d0fa]: 3 changes artifact: 36ecfc49e7 user: aspect | |
| 11:04 | [f9fe90d0fa]: more path normalization in TclNewFSPathObj Leaf check-in: 27bac5b2c6 user: aspect tags: bug-f9fe90d0fa | |
|
2017-01-03
| ||
| 19:45 | • Ticket [f9fe90d0fa] Inconsistent handling of leading // status still Open with 3 other changes artifact: a2835be349 user: dgp | |
|
2016-12-16
| ||
| 15:38 | • Ticket [f9fe90d0fa]: 4 changes artifact: b0b089ef04 user: rkeene | |
| 05:30 | • New ticket [f9fe90d0fa]. artifact: 2e1e63bcbe user: aspect | |
| Ticket UUID: | f9fe90d0fa28fbe821db1c207de34010d51cf6e8 | |||
| Title: | Inconsistent handling of leading // | |||
| Type: | Bug | Version: | 8.6.5 | |
| Submitter: | aspect | Created on: | 2016-12-16 05:30:04 | |
| Subsystem: | 36. Pathname Management | Assigned To: | dgp | |
| Priority: | 5 Medium | Severity: | Minor | |
| Status: | Closed | Last Modified: | 2017-05-01 20:24:35 | |
| Resolution: | Fixed | Closed By: | dgp | |
| Closed on: | 2017-05-01 20:24:35 | |||
| Description: |
(on Unix - no idea about Windows) % file join //bla a /bla/a % file normalize //bla //bla % file join //bla a //bla/a From [::tcl::unsupported::representation] we can see what's going on - the 2nd line shimmers interned //bla to a path. Proper UNC paths should have a trailing slash .. but then it gets even weirder: % file join //bla/ a /bla/a % file normalize //bla/ /bla % file join //bla/ a //bla/a Handling of //-prefixed paths seems to be inconsistent. I *think* they're documented as special only on Windows (UNC paths), but there's code somewhere treating them specially on Unix. It's not in TclFSNormalizeAbsolutePath. There's an argument that treating them specially on Unix would be useful, if only as pseudo-mountpoints for VFS. See also [bug 1752589fff]. | |||
| User Comments: |
dgp added on 2017-05-01 20:24:35:
Fix for all dev branches. dgp added on 2017-05-01 16:12:44: If someone wants to make // prefix special, they should mount a Tcl_Filesystem that does so. The "native" filesystem for unix should not be changed in this way. aspect added on 2017-04-29 11:05:52: The fix for [f34cf83dd0] (merged to trunk in [e895b53905]) came close to hitting this. Attempted fix in [bug-f9fe90d0fa] ([27bac5b2c6]). rkeene added on 2016-12-16 15:38:26: // is specified by POSIX to be special: > A pathname that begins with two successive slashes may be interpreted in an > implementation-defined manner, although more than two leading slashes shall be > treated as a single slash. http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap04.html#tag_04_11 | |||