1 |
On Thu, 2019-10-17 at 11:02 -0700, Zac Medico wrote: |
2 |
> On 10/17/19 5:09 AM, Michał Górny wrote: |
3 |
> > Unlink for all distfile layouts rather than for all but primary. This |
4 |
> > wrongly assumed that the primary layout will always be removed |
5 |
> > as a result of earlier code. However, the rename() call correctly |
6 |
> > assumes that the primary layout may be an old symlink, and operates |
7 |
> > on realpath(). Therefore, the real file from a secondary layout may |
8 |
> > be renamed, leaving dangling symlink. |
9 |
> > |
10 |
> > Bug: https://bugs.gentoo.org/697906 |
11 |
> > Signed-off-by: Michał Górny <mgorny@g.o> |
12 |
> > --- |
13 |
> > lib/portage/_emirrordist/DeletionTask.py | 2 +- |
14 |
> > 1 file changed, 1 insertion(+), 1 deletion(-) |
15 |
> > |
16 |
> > diff --git a/lib/portage/_emirrordist/DeletionTask.py b/lib/portage/_emirrordist/DeletionTask.py |
17 |
> > index db5ac5ffb..a4bb29419 100644 |
18 |
> > --- a/lib/portage/_emirrordist/DeletionTask.py |
19 |
> > +++ b/lib/portage/_emirrordist/DeletionTask.py |
20 |
> > @@ -102,7 +102,7 @@ class DeletionTask(CompositeTask): |
21 |
> > |
22 |
> > def _delete_links(self): |
23 |
> > success = True |
24 |
> > - for layout in self.config.layouts[1:]: |
25 |
> > + for layout in self.config.layouts: |
26 |
> > distfile_path = os.path.join( |
27 |
> > self.config.options.distfiles, |
28 |
> > layout.get_path(self.distfile)) |
29 |
> > |
30 |
> |
31 |
> Looks good. Please merge. |
32 |
|
33 |
Done. Could you make a bugfix release with this, please? |
34 |
|
35 |
-- |
36 |
Best regards, |
37 |
Michał Górny |