From fba11b815e2661b6c6b37247e0eadfa24863fc43 Mon Sep 17 00:00:00 2001 From: Zackery Spytz Date: Fri, 31 May 2019 10:43:13 -0600 Subject: [PATCH 1/2] 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 c8d5bf6c3fa09b43f6a5ee779d493d251dbcc53c) Co-authored-by: Zackery Spytz --- Lib/msilib/__init__.py | 2 +- Lib/test/test_msilib.py | 9 +++++++++ .../Library/2019-05-30-16-16-47.bpo-12639.TQFOR4.rst | 2 ++ 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/Library/2019-05-30-16-16-47.bpo-12639.TQFOR4.rst diff --git a/Lib/msilib/__init__.py b/Lib/msilib/__init__.py index 0352b60c0b2563..9520dfc021a08d 100644 --- a/Lib/msilib/__init__.py +++ b/Lib/msilib/__init__.py @@ -276,7 +276,7 @@ def start_component(self, component = None, feature = None, flags = None, keyfil 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 diff --git a/Lib/test/test_msilib.py b/Lib/test/test_msilib.py index a2f3943e228119..be350c6dd3c6b0 100644 --- a/Lib/test/test_msilib.py +++ b/Lib/test/test_msilib.py @@ -43,6 +43,15 @@ def test_summaryinfo_getproperty_issue1104(self): sum_info = None unlink(db_path) + def test_directory_start_component_keyfile(self): + db, db_path = init_database() + self.addCleanup(db.Close) + 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 diff --git a/Misc/NEWS.d/next/Library/2019-05-30-16-16-47.bpo-12639.TQFOR4.rst b/Misc/NEWS.d/next/Library/2019-05-30-16-16-47.bpo-12639.TQFOR4.rst new file mode 100644 index 00000000000000..aade9121b4bbbd --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-05-30-16-16-47.bpo-12639.TQFOR4.rst @@ -0,0 +1,2 @@ +:meth:`msilib.Directory.start_component()` no longer fails if *keyfile* is +not ``None``. From e2fd5f7c4f4f97b8fafc88b23f5c205341ff3aef Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Fri, 31 May 2019 14:57:36 -0700 Subject: [PATCH 2/2] Remote Close call --- Lib/test/test_msilib.py | 1 - 1 file changed, 1 deletion(-) diff --git a/Lib/test/test_msilib.py b/Lib/test/test_msilib.py index be350c6dd3c6b0..58f709d70dcd93 100644 --- a/Lib/test/test_msilib.py +++ b/Lib/test/test_msilib.py @@ -45,7 +45,6 @@ def test_summaryinfo_getproperty_issue1104(self): def test_directory_start_component_keyfile(self): db, db_path = init_database() - self.addCleanup(db.Close) feature = msilib.Feature(db, 0, 'Feature', 'A feature', 'Python') cab = msilib.CAB('CAB') dir = msilib.Directory(db, cab, None, TESTFN, 'TARGETDIR', pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy