]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Move update length check before operations
authorshamoon <4887959+shamoon@users.noreply.github.com>
Wed, 30 Jul 2025 03:31:18 +0000 (23:31 -0400)
committershamoon <4887959+shamoon@users.noreply.github.com>
Sat, 2 Aug 2025 12:22:55 +0000 (08:22 -0400)
src/documents/bulk_edit.py

index 894d0d4aa40b62e8d911654179b2962310fbc75c..af6be45b69cf7c95e358cbe25d4c885df6a1dbf5 100644 (file)
@@ -528,6 +528,12 @@ def edit_pdf(
             max_idx = max(op.get("doc", 0) for op in operations)
             pdf_docs = [pikepdf.new() for _ in range(max_idx + 1)]
 
+            if update_document and len(pdf_docs) > 1:
+                logger.error(
+                    "Update requested but multiple output documents specified",
+                )
+                return "ERROR"
+
             for op in operations:
                 dst = pdf_docs[op.get("doc", 0)]
                 page = src.pages[op["page"] - 1]
@@ -536,11 +542,6 @@ def edit_pdf(
                     dst.pages[-1].rotate(op["rotate"], relative=True)
 
         if update_document:
-            if len(pdf_docs) != 1:
-                logger.error(
-                    "Update requested but multiple output documents specified",
-                )
-                return "ERROR"
             pdf = pdf_docs[0]
             pdf.remove_unreferenced_resources()
             pdf.save(doc.source_path)