Tcl Source Code

Ticket Change Details
Login
Overview

Artifact ID: 82c7c42d7f99141bb9cc706e20acf2c61a95c5580a5cb1e5a8a3391772c0a8d3
Ticket: 270f78ca95b642fbed81ed03ad381d64a0d0f7df
file mkdir: race condition if two workers creates same directory and one worker deletes it immediately
User & Date: aspect 2018-07-12 10:21:53
Changes

  1. assignee changed to: "sebres"
  2. closer changed to: "nobody"
  3. icomment:
    I'm not convinced by [1c12ee9e45222d6c].  If I'm reading the patch correctly ..
    
    If EEXIST is raised twice, TclFileMakeDirsCmd simply ignores it.  The comment above "goto nextPart" suggests something different, so I suspect this isn't intended.
    
    Removing the call to FSStat means we can report success if the target exists and is a file.  This is clearly wrong.
    
    Removing the Tcl_ResetResult() call rings alarm bells, but it looks like that was redundant in the first place.
    
    I think lines 287-289 (post-patch) should simply be deleted so the success case can pass through Tcl_FSStat success on line 258.
    
  4. login: "aspect"
  5. mimetype: "text/x-fossil-wiki"
  6. resolution changed to: "None"
  7. status changed to: "Open"