Package: python3-pymupdf Version: 1.25.0+ds1-2 Severity: serious Hi,
the autopkgtest of pymupdf currently segfaults on arm64, ppc64el and riscv64. In an attempt to get to the bottom of this I found a minimal reproducer: python3 -c "import pymupdf,sys; doc=pymupdf,sys; doc=pymupdf.open(sys.argv[1]);doc[0].get_text()" /usr/share/doc/fig2dev/manual.pdf Which pdf document is opened seems to be irrelevant. It crashed for any that I tried. This makes this bug RC, I think. I can reproduce the problem in a minimal Debian unstable chroot: mmdebstrap --include=python3-pymupdf,python3-pymupdf-dbgsym,libmupdf25.1-dbgsym,gdb,fig2dev --customize-hook='env SHELL=/bin/sh chroot "$1" gdb -batch -ex "set logging enabled on" -ex "set pagination off" -ex run -ex "bt full" -ex quit --args python3 -c "import pymupdf,sys; doc=pymupdf,sys; doc=pymupdf.open(sys.argv[1]);doc[0].get_text()" /usr/share/doc/fig2dev/manual.pdf' unstable /dev/null http://deb.debian.org/debian "deb http://deb.debian.org/debian-debug unstable-debug main" [...] Program received signal SIGSEGV, Segmentation fault. 0x0000fffff2d13ce8 in mupdf::FzStextPageIterator::FzStextPageIterator (this=0xfffff74b5e6c, item=...) at platform/c++/implementation/classes.cpp:22939 warning: 22939 platform/c++/implementation/classes.cpp: No such file or directory #0 0x0000fffff2d13ce8 in mupdf::FzStextPageIterator::FzStextPageIterator (this=0xfffff74b5e6c, item=...) at platform/c++/implementation/classes.cpp:22939 No locals. #1 0x0000fffff2d13d3c in mupdf::FzStextPage::begin (this=this@entry=0x11dd690) at platform/c++/implementation/classes.cpp:22868 ret = {m_item = {m_internal = 0x6665727800000000, static s_num_instances = 1}} #2 0x0000fffff74ad020 in JM_print_stext_page_as_text (res=..., page=...) at ./src/build/extra.i.cpp:5570 block = {m_internal = 0xfffff7fe6420} __for_range = @0x11dd690: {m_internal = 0x1196ea8} __for_begin = {m_item = {m_internal = 0xfffff7fe6430}} __for_end = {m_item = {m_internal = 0xffffffffe7c0}} rect = {x0 = <optimized out>, y0 = 0, x1 = <optimized out>, y1 = 792} #3 0x0000fffff74ad320 in _wrap_JM_print_stext_page_as_text (self=<optimized out>, args=<optimized out>) at ./src/build/extra.i.cpp:10767 fail = <optimized out> resultobj = 0x0 arg1 = 0x11dd560 arg2 = <optimized out> argp1 = 0x11dd560 res1 = <optimized out> argp2 = 0x11dd690 res2 = <optimized out> swig_obj = {0xfffff196af90, 0xfffff196b380} #4 0x00000000004e924c in ?? () No symbol table info available. #5 0x00000000004a3dc0 in _PyObject_MakeTpCall () No symbol table info available. #6 0x00000000004c1fd4 in _PyEval_EvalFrameDefault () No symbol table info available. #7 0x00000000005d2040 in PyEval_EvalCode () No symbol table info available. #8 0x00000000005fd91c in ?? () No symbol table info available. #9 0x00000000005f7e70 in ?? () No symbol table info available. #10 0x00000000005e6094 in ?? () No symbol table info available. #11 0x00000000005e5e1c in ?? () No symbol table info available. #12 0x00000000006229f8 in Py_RunMain () No symbol table info available. #13 0x00000000005bc188 in Py_BytesMain () No symbol table info available. #14 0x0000fffff7ce229c in ?? () from /lib/aarch64-linux-gnu/libc.so.6 No symbol table info available. #15 0x0000fffff7ce237c in __libc_start_main () from /lib/aarch64-linux-gnu/libc.so.6 No symbol table info available. #16 0x00000000005badb0 in _start () No symbol table info available. A debugging session is active. Inferior 1 [process 4068] will be killed. Any idea what could be going on? Thanks! cheers, josch