Tcl Source Code

Check-in [fa19dfa605]
Login

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

Overview
Comment:[Bug 3603434] Make sure TclpObjNormalizePath() properly declares "a:/" to be normalized, even when no "A:" drive is present on the system.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | core-8-4-branch
Files: files | file ages | folders
SHA1: fa19dfa6058b5d95f7ad498d5963941489046bb8
User & Date: dgp 2013-02-05 16:54:29
Context
2013-02-12
23:13
Backport various improvements from Tcl 8.5 check-in: 35e9430673 user: jan.nijtmans tags: core-8-4-branch
2013-02-11
18:51
3604074 Revise unempty() so that it does not copy arcs that will become EMPTY vacuous loops. Such c... Closed-Leaf check-in: c6cce5e952 user: dgp tags: bug-3604074
16:11
Merge core-8-4-branch check-in: f12bf3792c user: jan.nijtmans tags: bug-3562640
2013-02-05
16:55
[Bug 3603434] Make sure TclpObjNormalizePath() properly declares "a:/" to be normalized, even when n... check-in: 111464a29c user: dgp tags: core-8-5-branch
16:54
[Bug 3603434] Make sure TclpObjNormalizePath() properly declares "a:/" to be normalized, even when n... check-in: fa19dfa605 user: dgp tags: core-8-4-branch
16:47
Fix for Bug 3603434. Closed-Leaf check-in: 8f2e66a8be user: dgp tags: bug-3603434
2013-01-30
19:04
(::platform::LibcVersion): See [Bug 3599098]: Fixed the RE extracting the version to avoid issues w... check-in: 2798119d9f user: andreask tags: core-8-4-branch
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to ChangeLog.







1
2
3
4
5
6
7






2013-01-30  Andreas Kupries  <[email protected]>

	* library/platform/platform.tcl (::platform::LibcVersion): See
	* library/platform/pkgIndex.tcl: [Bug 3599098]: Fixed the RE
	  extracting the version to avoid issues with recent changes to
	  the glibc banner. Now targeting a less variable part of the
	  string. Bumped package to version 1.0.11.
>
>
>
>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
13
2013-02-05  Don Porter  <[email protected]>

	* win/tclWinFile.c:	[Bug 3603434] Make sure TclpObjNormalizePath() 
	properly declares "a:/" to be normalized, even when no "A:" drive is
	present on the system.

2013-01-30  Andreas Kupries  <[email protected]>

	* library/platform/platform.tcl (::platform::LibcVersion): See
	* library/platform/pkgIndex.tcl: [Bug 3599098]: Fixed the RE
	  extracting the version to avoid issues with recent changes to
	  the glibc banner. Now targeting a less variable part of the
	  string. Bumped package to version 1.0.11.

Changes to win/tclWinFile.c.

2331
2332
2333
2334
2335
2336
2337






2338
2339
2340
2341
2342
2343
2344
				for (i=0;i<len;i++) {
				    if (nativePath[i] >= 'a') {
					((char*)nativePath)[i] -= ('a' - 'A');
				    }
				}
				Tcl_DStringAppend(&dsNorm, nativePath, len);
				lastValidPathEnd = currentPathEndPosition;






			    }
			}
			Tcl_DStringFree(&ds);
			break;
		    }
		    if (nativePath[0] >= 'a') {
			((char*)nativePath)[0] -= ('a' - 'A');







>
>
>
>
>
>







2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
				for (i=0;i<len;i++) {
				    if (nativePath[i] >= 'a') {
					((char*)nativePath)[i] -= ('a' - 'A');
				    }
				}
				Tcl_DStringAppend(&dsNorm, nativePath, len);
				lastValidPathEnd = currentPathEndPosition;
			    } else if (nextCheckpoint == 0) {
				/* Path starts with a drive designation
				 * that's not actually on the system.
				 * We still must normalize up past the
				 * first separator.  [Bug 3603434] */
				currentPathEndPosition++;
			    }
			}
			Tcl_DStringFree(&ds);
			break;
		    }
		    if (nativePath[0] >= 'a') {
			((char*)nativePath)[0] -= ('a' - 'A');
2413
2414
2415
2416
2417
2418
2419






2420
2421
2422
2423
2424
2425
2426
				    wc -= (L'a' - L'A');
				    ((WCHAR*)nativePath)[i] = wc;
				}
			    }
			    Tcl_DStringAppend(&dsNorm, nativePath,
					      sizeof(WCHAR)*len);
			    lastValidPathEnd = currentPathEndPosition;






			}
		    }
		    Tcl_DStringFree(&ds);
		    break;
		}

		/* 







>
>
>
>
>
>







2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
				    wc -= (L'a' - L'A');
				    ((WCHAR*)nativePath)[i] = wc;
				}
			    }
			    Tcl_DStringAppend(&dsNorm, nativePath,
					      sizeof(WCHAR)*len);
			    lastValidPathEnd = currentPathEndPosition;
			} else if (nextCheckpoint == 0) {
			    /* Path starts with a drive designation
			     * that's not actually on the system.
			     * We still must normalize up past the
			     * first separator.  [Bug 3603434] */
			    currentPathEndPosition++;
			}
		    }
		    Tcl_DStringFree(&ds);
		    break;
		}

		/*