Comment 5 for bug 882877

Revision history for this message
Nikodemus Siivola (nikodemus) wrote :

commit 2a0f8515245d080dee97b72ee910c5dcbc4fc5e4
Author: Nikodemus Siivola <email address hidden>
Date: Sun Oct 30 21:51:30 2011 +0200

    make DELETE-FILE respect *DEFAULT-PATHNAME-DEFAULTS*

      MERGE-PATHNAMES to get an absolute pathname. (Using TRUENAME would be wrong,
      since then we would delete files pointed to by symbolic links, and not the
      symbolic links themselves -- a nasty regression that would be!)

      Also remove the "for error checking" TRUENAME call from there: unlink will
      give us an errno that tells what we need to know -- and lo! there is one
      race condition less in the system.

      Previously using relative pathnames it was possible to accidentally delete
      the wrong file.

      Fixes lp#882877.

      NB: currently DELETE-DIRECTORY and RENAME-FILE use TRUENAME with just the
          aforementioned unfortunate consequence, but I'm hesitant to change them
          during the freeze -- so dealing with this issue in them will have to
          wait a bit.