Tcl Source Code

Check-in [c74b286bfa]
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:suggested fix for Bug 3092089: [file normalize] can remove path component, and for Bug 3587096: startup error message when exe in folder with junction with limited rights
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | bug-3092089
Files: files | file ages | folders
SHA1: c74b286bfac751d87e31b7df739f5f8223cb1c0b
User & Date: jan.nijtmans 2013-01-03 11:40:51
Context
2013-01-08
08:44
new attempt for better fix Closed-Leaf check-in: 4fad40532f user: jan.nijtmans tags: bug-3092089
2013-01-03
11:40
suggested fix for Bug 3092089: [file normalize] can remove path component, and for Bug 3587096: sta... check-in: c74b286bfa user: jan.nijtmans tags: bug-3092089
09:29
test case for bug-3598580: Tcl_ListObjReplace may release deleted elements too early check-in: 93213f3e6d user: jan.nijtmans tags: core-8-5-branch
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to win/tclWinFile.c.

703
704
705
706
707
708
709






710
711
712
713
714
715
716
{
    HANDLE hFile;
    DWORD returnedLength;

    hFile = (*tclWinProcs->createFileProc)(linkDirPath, GENERIC_READ, 0,
	    NULL, OPEN_EXISTING,
	    FILE_FLAG_OPEN_REPARSE_POINT|FILE_FLAG_BACKUP_SEMANTICS, NULL);







    if (hFile == INVALID_HANDLE_VALUE) {
	/*
	 * Error creating directory.
	 */

	TclWinConvertError(GetLastError());






>
>
>
>
>
>







703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
{
    HANDLE hFile;
    DWORD returnedLength;

    hFile = (*tclWinProcs->createFileProc)(linkDirPath, GENERIC_READ, 0,
	    NULL, OPEN_EXISTING,
	    FILE_FLAG_OPEN_REPARSE_POINT|FILE_FLAG_BACKUP_SEMANTICS, NULL);

    if (hFile == INVALID_HANDLE_VALUE) {
	hFile = (*tclWinProcs->createFileProc)(linkDirPath, 0, 0,
		NULL, OPEN_EXISTING,
		FILE_FLAG_OPEN_REPARSE_POINT|FILE_FLAG_BACKUP_SEMANTICS, NULL);
    }

    if (hFile == INVALID_HANDLE_VALUE) {
	/*
	 * Error creating directory.
	 */

	TclWinConvertError(GetLastError());