Gentoo Archives: gentoo-alt

From: Derek Harland <derek@××××××××××××××.com>
To: gentoo-alt@l.g.o
Subject: [gentoo-alt] Bug in portage.dbapi.vartree:LinkageMapMachO.isMasterLink ??
Date: Tue, 26 Aug 2008 07:29:27
Message-Id: 957D892D-70DE-4CB6-A6EB-3B05F601278B@chocolate-fish.com
1 I've just updated portage and have found the following bug in portage:
2
3 emerge -u gettext
4
5 >>> Installing sys-devel/gettext-0.17
6 Traceback (most recent call last):
7 File "/Volumes/MacData/Users/derek/gentoo/usr/bin/emerge", line
8 20, in <module>
9 retval = _emerge.emerge_main()
10 ...
11 File "/Volumes/MacData/Users/derek/gentoo/usr/lib/portage/pym/
12 portage/dbapi/vartree.py", line 2965, in _preserve_libs
13 if linkmap.isMasterLink(lib):
14 File "/Volumes/MacData/Users/derek/gentoo/usr/lib/portage/pym/
15 portage/dbapi/vartree.py", line 898, in isMasterLink
16 if obj_key not in self._obj_properties:
17 NameError: global name 'obj_key' is not defined
18
19 Theres clearly a bug in this method, it seems to be missing a line to
20 compute obj_key
21
22 def isMasterLink(self, obj):
23 """
24 Determine whether an object is a master link.
25
26 @param obj: absolute path to an object
27 @type obj: string (example: '/usr/bin/foo')
28 @rtype: Boolean
29 @return:
30 1. True if obj is a master link
31 2. False if obj is not a master link
32
33 """
34 basename = os.path.basename(obj)
35 if obj_key not in self._obj_properties:
36 raise KeyError("%s (%s) not in object list" % (obj_key, obj))
37 install_name = self._obj_properties[obj_key][1]
38 return (len(basename) < len(os.path.basename(install_name)))
39
40 It should probably have the following added
41
42 obj_key = self._ObjectKey(obj)
43
44 (Note I'm very new to gentoo in all forms and no nothing about
45 portage itself ... should I be filing this on gentoos bug tracker?)
46
47 Here is my emerge --info
48
49 $ emerge --info
50 Portage 2.2.00.11472-prefix (default-prefix/darwin/macos/10.4/x86,
51 gcc-4.0.1, unavailable, 8.11.1 i386)
52 =================================================================
53 System uname: Darwin-8.11.1-i386-32bit
54 Timestamp of tree: Tue, 26 Aug 2008 06:41:29 +0000
55 distcc 2.18.3-Apple.1 powerpc-apple-darwin8.0 (protocols 1 and 2)
56 (default port 3632) [disabled]
57 app-shells/bash: 3.2_p39
58 dev-lang/python: 2.4.4-r13, 2.5.2-r5
59 sys-devel/autoconf: 2.61-r2
60 sys-devel/automake: 1.10.1-r1
61 sys-devel/gcc-config: 1.4.0-r04.3
62 sys-devel/libtool: 1.5.26
63
64 Derek.

Replies