diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c9d9b6..98eaade 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Fixed +- `ValueError` when trying to decrypt empty metadata values ([#766](https://github.com/pdfminer/pdfminer.six/issues/766)) - Sphinx errors during building of documentation ([#760](https://github.com/pdfminer/pdfminer.six/pull/760)) - `TypeError` when getting default width of font ([#720](https://github.com/pdfminer/pdfminer.six/issues/720)) diff --git a/pdfminer/pdftypes.py b/pdfminer/pdftypes.py index f4543b9..d7a2f41 100644 --- a/pdfminer/pdftypes.py +++ b/pdfminer/pdftypes.py @@ -138,6 +138,8 @@ def resolve_all(x: object, default: object = None) -> Any: def decipher_all(decipher: DecipherCallable, objid: int, genno: int, x: object) -> Any: """Recursively deciphers the given object.""" if isinstance(x, bytes): + if len(x) == 0: + return x return decipher(objid, genno, x) if isinstance(x, list): x = [decipher_all(decipher, objid, genno, v) for v in x]