From bf3c9c9c4ea740e7afea48fdc932eaecda277d70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9?= Date: Sat, 16 Apr 2022 01:40:36 -0700 Subject: [PATCH] BUG: Add overwriteWarnings parameter PdfFileMerger (#243) This helps users who run into issue #67 --- PyPDF2/merger.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/PyPDF2/merger.py b/PyPDF2/merger.py index 670629d24..1f2ab2d6b 100644 --- a/PyPDF2/merger.py +++ b/PyPDF2/merger.py @@ -67,9 +67,12 @@ class PdfFileMerger(object): :param bool strict: Determines whether user should be warned of all problems and also causes some correctable problems to be fatal. Defaults to ``True``. + :param bool overwriteWarnings: Determines whether to override Python's + ``warnings.py`` module with a custom implementation (defaults to + ``True``). """ - def __init__(self, strict=True): + def __init__(self, strict=True, overwriteWarnings=True): self.inputs = [] self.pages = [] self.output = PdfFileWriter() @@ -77,6 +80,7 @@ def __init__(self, strict=True): self.named_dests = [] self.id_count = 0 self.strict = strict + self.overwriteWarnings = overwriteWarnings def merge(self, position, fileobj, bookmark=None, pages=None, import_bookmarks=True): """ @@ -132,7 +136,7 @@ def merge(self, position, fileobj, bookmark=None, pages=None, import_bookmarks=T # Create a new PdfFileReader instance using the stream # (either file or BytesIO or StringIO) created above - pdfr = PdfFileReader(fileobj, strict=self.strict) + pdfr = PdfFileReader(fileobj, strict=self.strict, overwriteWarnings=self.overwriteWarnings) if decryption_key is not None: pdfr._decryption_key = decryption_key