Tcl Source Code

Check-in [fa19dfa605]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

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
....
2413
2414
2415
2416
2417
2418
2419






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






			}
		    }
		    Tcl_DStringFree(&ds);
		    break;
		}

		/* 






>
>
>
>
>
>







 







>
>
>
>
>
>







2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
....
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
				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');
................................................................................
				    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;
		}

		/*