mirror of
git://slackware.nl/current.git
synced 2024-12-28 09:59:53 +01:00
16d0eba8e3
a/gettext-0.22.1-x86_64-1.txz: Upgraded. a/kernel-firmware-20230918_3672cca-noarch-1.txz: Upgraded. a/kernel-generic-6.1.54-x86_64-1.txz: Upgraded. a/kernel-huge-6.1.54-x86_64-1.txz: Upgraded. a/kernel-modules-6.1.54-x86_64-1.txz: Upgraded. a/openssl-solibs-3.1.3-x86_64-1.txz: Upgraded. ap/ghostscript-10.02.0-x86_64-2.txz: Rebuilt. [PATCH] PDF interpreter - fix PageList processing. Thanks to denydias. d/gettext-tools-0.22.1-x86_64-1.txz: Upgraded. d/kernel-headers-6.1.54-x86-1.txz: Upgraded. k/kernel-source-6.1.54-noarch-1.txz: Upgraded. l/dconf-editor-45.0-x86_64-1.txz: Upgraded. l/harfbuzz-8.2.1-x86_64-1.txz: Upgraded. l/nodejs-20.7.0-x86_64-1.txz: Upgraded. n/openssl-3.1.3-x86_64-1.txz: Upgraded. This update fixes bugs and a security issue that does not affect Linux: Fix POLY1305 MAC implementation corrupting XMM registers on Windows. For more information, see: https://www.cve.org/CVERecord?id=CVE-2023-4807 isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. testing/packages/rust-1.72.1-x86_64-1.txz: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
52 lines
1.7 KiB
Diff
52 lines
1.7 KiB
Diff
From 9b6fe6e1008f1b9b7fc3109b5f94db8d970fbcaa Mon Sep 17 00:00:00 2001
|
|
From: Ken Sharp <Ken.Sharp@artifex.com>
|
|
Date: Mon, 18 Sep 2023 15:47:12 +0100
|
|
Subject: [PATCH] PDF interpreter - fix PageList processing
|
|
|
|
Bug #707137 "Error processing PDF while using the parameter -sPageList"
|
|
|
|
There are actually 2 problems; firstly a copy/paste error of the
|
|
operand stack index when returning the page list meant that the values
|
|
were returned in reverse order.
|
|
|
|
Secondly the PageList string wasn't actually being passed as an operand
|
|
at all.
|
|
|
|
This only affects the PDF interpreter because it (unfortunately) uses a
|
|
different mechanism from the PostScript interpreter.
|
|
---
|
|
Resource/Init/pdf_main.ps | 3 +--
|
|
psi/zpdfops.c | 2 +-
|
|
2 files changed, 2 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/Resource/Init/pdf_main.ps b/Resource/Init/pdf_main.ps
|
|
index e541835ae..73097f1a7 100644
|
|
--- a/Resource/Init/pdf_main.ps
|
|
+++ b/Resource/Init/pdf_main.ps
|
|
@@ -710,8 +710,7 @@ currentdict /PDFSwitches undef
|
|
{
|
|
/PageList where {
|
|
pop
|
|
- pdfpagecount
|
|
- .PDFparsePageList
|
|
+ PageList pdfpagecount .PDFparsePageList
|
|
dup 0 eq { % No ranges, error
|
|
(\n **** Error: Invalid PageList: ) print
|
|
PageList print
|
|
diff --git a/psi/zpdfops.c b/psi/zpdfops.c
|
|
index 207130f1a..e7e0a42ee 100644
|
|
--- a/psi/zpdfops.c
|
|
+++ b/psi/zpdfops.c
|
|
@@ -1447,7 +1447,7 @@ static int zPDFparsePageList(i_ctx_t *i_ctx_p)
|
|
}
|
|
/* push the even/odd, start, end triples on the stack */
|
|
for (i=0; i < size; i++) {
|
|
- o = ref_stack_index(&o_stack, 0);
|
|
+ o = ref_stack_index(&o_stack, size - i);
|
|
if (o == NULL)
|
|
return_error(gs_error_stackunderflow);
|
|
/* skip the initial "ordered" flag */
|
|
--
|
|
2.34.1
|
|
|
|
|