Tcl Source Code

Check-in [a09a9e64c0]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Add special handling required for ~foo filesystem paths.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | remove-pathappend-intrep
Files: files | file ages | folders
SHA1: a09a9e64c031cb5d33b45d6dbcc85d80df952986
User & Date: dgp 2011-10-05 19:01:04
Context
2011-10-06
19:26
Disabled more large blocks of code not needed in the absence of the TCLPATH_APPEND intrep. check-in: 3ea6aab6df user: dgp tags: remove-pathappend-intrep
2011-10-05
19:01
Add special handling required for ~foo filesystem paths. check-in: a09a9e64c0 user: dgp tags: remove-pathappend-intrep
18:11
Radical experiment of completely disabling the TCLPATH_APPENDED intrep of the "path" Tcl_ObjType tha... check-in: 15d9677358 user: dgp tags: remove-pathappend-intrep
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/tclPathObj.c.

1265
1266
1267
1268
1269
1270
1271






1272
1273
1274
1275
1276
1277
1278
    const char *addStrRep,
    int len)
{
#if 1
    Tcl_Obj *newPath, *tail = Tcl_NewStringObj(addStrRep, len);

    Tcl_IncrRefCount(tail);






    newPath = Tcl_FSJoinToPath(dirPtr, 1, &tail);
    if (newPath != tail) {
	Tcl_DecrRefCount(tail);
    }
    return newPath;
#else
    FsPath *fsPathPtr;







>
>
>
>
>
>







1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
    const char *addStrRep,
    int len)
{
#if 1
    Tcl_Obj *newPath, *tail = Tcl_NewStringObj(addStrRep, len);

    Tcl_IncrRefCount(tail);
    if (addStrRep[0] == '~') {
	newPath = AppendPath(dirPtr, tail);
	Tcl_DecrRefCount(tail);
	return newPath;
    }

    newPath = Tcl_FSJoinToPath(dirPtr, 1, &tail);
    if (newPath != tail) {
	Tcl_DecrRefCount(tail);
    }
    return newPath;
#else
    FsPath *fsPathPtr;