[2.7] bpo-12639: msilib.Directory.start_component() fails if *keyfile* is not None (GH-13688)
* bpo-12639: msilib.Directory.start_component() fails if *keyfile* is not None (GH-13688)
msilib.Directory.start_component() was passing an extra argument to CAB.gen_id().
(cherry picked from commit c8d5bf6c3f
)
Co-authored-by: Zackery Spytz <zspytz@gmail.com>
This commit is contained in:
parent
103b8d9f91
commit
bfc1f60560
|
@ -276,7 +276,7 @@ class Directory:
|
|||
if Win64:
|
||||
flags |= 256
|
||||
if keyfile:
|
||||
keyid = self.cab.gen_id(self.absolute, keyfile)
|
||||
keyid = self.cab.gen_id(keyfile)
|
||||
self.keyfiles[keyfile] = keyid
|
||||
else:
|
||||
keyid = None
|
||||
|
|
|
@ -43,6 +43,14 @@ class MsiDatabaseTestCase(unittest.TestCase):
|
|||
sum_info = None
|
||||
unlink(db_path)
|
||||
|
||||
def test_directory_start_component_keyfile(self):
|
||||
db, db_path = init_database()
|
||||
feature = msilib.Feature(db, 0, 'Feature', 'A feature', 'Python')
|
||||
cab = msilib.CAB('CAB')
|
||||
dir = msilib.Directory(db, cab, None, TESTFN, 'TARGETDIR',
|
||||
'SourceDir', 0)
|
||||
dir.start_component(None, feature, None, 'keyfile')
|
||||
|
||||
|
||||
class Test_make_id(unittest.TestCase):
|
||||
#http://msdn.microsoft.com/en-us/library/aa369212(v=vs.85).aspx
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
:meth:`msilib.Directory.start_component()` no longer fails if *keyfile* is
|
||||
not ``None``.
|
Loading…
Reference in New Issue