Gentoo Archives: gentoo-commits

From: "André Erdmann" <dywi@×××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/R_overlay:master commit in: roverlay/overlay/pkgdir/
Date: Thu, 18 Feb 2016 16:33:30
Message-Id: 1455812331.25f6d2967ec621ecdcd65d2beab405a357e870e4.dywi@gentoo
1 commit: 25f6d2967ec621ecdcd65d2beab405a357e870e4
2 Author: André Erdmann <dywi <AT> mailerd <DOT> de>
3 AuthorDate: Thu Feb 18 16:18:51 2016 +0000
4 Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
5 CommitDate: Thu Feb 18 16:18:51 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/R_overlay.git/commit/?id=25f6d296
7
8 pkgdir: set default add-policy (bug 574782)
9
10 In roverlay/overlay/pkgdir/packagedir_base.py,
11 PackageDirBase.add_package().package_try_replace():
12
13 package_info.overlay_addition_override needs to be set
14 to an integer value before calling package_try_replace(),
15 because it is used in a bitwise operation:
16
17 package_info.overlay_addition_override &= ~_PKG_REPLACE_ONLY
18
19 which raises a TypeError if overlay_addition_override is None.
20
21 When running roverlay without bytecode optimizations ("python -O"),
22 the bug gets catched a bit earlier due to a failing assertion,
23 as shown in #574782.
24
25 X-Gentoo-Bug: 574782
26 X-Gentoo-Bug-url: https://bugs.gentoo.org/show_bug.cgi?id=574782
27
28 roverlay/overlay/pkgdir/packagedir_base.py | 9 ++++++---
29 1 file changed, 6 insertions(+), 3 deletions(-)
30
31 diff --git a/roverlay/overlay/pkgdir/packagedir_base.py b/roverlay/overlay/pkgdir/packagedir_base.py
32 index d398914..344173e 100644
33 --- a/roverlay/overlay/pkgdir/packagedir_base.py
34 +++ b/roverlay/overlay/pkgdir/packagedir_base.py
35 @@ -435,9 +435,12 @@ class PackageDirBase ( roverlay.overlay.base.OverlayObject ):
36 )
37 # -- end if
38
39 - addition_override = (
40 - package_info.overlay_addition_override or _PKG_DEFAULT_BEHAVIOR
41 - )
42 + # in absence of dynamic addition control,
43 + # set the default mode flags if addition_override is not configured
44 + if package_info.overlay_addition_override is None:
45 + package_info.overlay_addition_override = _PKG_DEFAULT_BEHAVIOR
46 +
47 + addition_override = package_info.overlay_addition_override
48
49 if addition_override & _PKG_FORCE_DENY:
50 log_addition_control_action ( _PKG_FORCE_DENY, shortver )