[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Fix preserve_mode when destination directory partially exist
From: |
Jim Meyering |
Subject: |
Re: [PATCH] Fix preserve_mode when destination directory partially exists |
Date: |
Wed, 09 Jan 2008 12:35:45 +0100 |
Paul Eggert <address@hidden> wrote:
> Jim Meyering <address@hidden> writes:
>
>> 2008-01-07 Jan Blunck <address@hidden>
>>
>> cp --parents: don't use uninitialized memory when restoring permissions
>
> In reviewing that patch I noticed that the bug of using uninitialized
> memory still remains in some (unlikely) cases. If 'stat (src,
> &new->st)' fails, the resulting uninitialized new->st buffer still
> remains in the list of directories whose modes need fixing later. As
> far as I can tell the bug is triggered only in a race condition, where
> a directory is moved as we are trying to copy it, so it's hard to come
> up with a test case for it. However, here's a patch.
>
> 2008-01-08 Paul Eggert <address@hidden>
>
> Fix a minor race condition when using cp -p --parents.
> * src/cp.c (make_dir_parents_private): If stat fails on the parent
> directory, do not add it to the list of directories whose modes
> might need fixing later. Also, do not bother invoking 'stat'
> unless the stat results might be needed later.
Good catch.
I've applied and pushed that.