From b03caa757e95484e29d318246947abc95f0ca535 Mon Sep 17 00:00:00 2001 From: dmjohnsson23 Date: Fri, 30 Jun 2023 13:54:36 -0600 Subject: [PATCH 1/2] Fix bug on `PdfReader.get_fields()` when "/Off" does not exist. --- pypdf/_reader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pypdf/_reader.py b/pypdf/_reader.py index b7b85f533..3b8731050 100644 --- a/pypdf/_reader.py +++ b/pypdf/_reader.py @@ -644,7 +644,7 @@ def _build_field( if s not in states: states.append(s) retval[key][NameObject("/_States_")] = ArrayObject(states) - if obj.get(FA.Ff, 0) & FA.FfBits.NoToggleToOff != 0: + if obj.get(FA.Ff, 0) & FA.FfBits.NoToggleToOff != 0 and "/Off" in retval[key]["/_States_"]:: del retval[key]["/_States_"][retval[key]["/_States_"].index("/Off")] def _check_kids( From add6f4dea5e1ea816973cd99a99dd2049483a295 Mon Sep 17 00:00:00 2001 From: Martin Thoma Date: Fri, 30 Jun 2023 23:21:55 +0200 Subject: [PATCH 2/2] fix typo --- pypdf/_reader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pypdf/_reader.py b/pypdf/_reader.py index 3b8731050..2bcd4175e 100644 --- a/pypdf/_reader.py +++ b/pypdf/_reader.py @@ -644,7 +644,7 @@ def _build_field( if s not in states: states.append(s) retval[key][NameObject("/_States_")] = ArrayObject(states) - if obj.get(FA.Ff, 0) & FA.FfBits.NoToggleToOff != 0 and "/Off" in retval[key]["/_States_"]:: + if obj.get(FA.Ff, 0) & FA.FfBits.NoToggleToOff != 0 and "/Off" in retval[key]["/_States_"]: del retval[key]["/_States_"][retval[key]["/_States_"].index("/Off")] def _check_kids(