Tcl Source Code

Ticket Change Details

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

  1. Change assignee to "sebres"
  2. Change closer to "nobody"
  3. Change icomment to:

    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. Change login to "aspect"
  5. Change mimetype to "text/x-fossil-wiki"
  6. Change resolution to "None"
  7. Change status to "Open"