OpenSlideError: 00000000: expected a marker instead of

Mathieu Malaterre mathieu.malaterre at gmail.com
Mon Jan 7 04:05:07 EST 2013


On Mon, Jan 7, 2013 at 12:33 AM, Benjamin Gilbert <bgilbert at cs.cmu.edu> wrote:
> This program will scan for unreadable JP2K tiles in an Aperio slide:
>
> <https://raw.github.com/openslide/openslide/master/misc/aperio-bad-jp2k-tiles.c>

$ gcc -o aperio-bad-jp2k-tiles aperio-bad-jp2k-tiles.c -lopenjpeg -ltiff
$ ./aperio-bad-jp2k-tiles /tmp/266981.svs
Directory: 0
  Reading: 21691/21692
Directory: 2
  Reading: 1362/1363
Directory: 3
  Reading: 95/96

-> everything seems ok. Experiment was done from a debian/sid (amd64) system...

$ ldd ./aperio-bad-jp2k-tiles
	linux-vdso.so.1 (0x00007fff7a5ff000)
	libopenjpeg.so.5 => /usr/lib/x86_64-linux-gnu/libopenjpeg.so.5
(0x00007f350eb0e000)
	libtiff.so.5 => /usr/lib/x86_64-linux-gnu/libtiff.so.5 (0x00007f350e89b000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f350e4f2000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f350e1f8000)
	liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f350dfd5000)
	libjbig.so.0 => /usr/lib/x86_64-linux-gnu/libjbig.so.0 (0x00007f350ddc6000)
	libjpeg.so.8 => /usr/lib/x86_64-linux-gnu/libjpeg.so.8 (0x00007f350db8c000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f350d975000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f350ed60000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f350d770000)


But I can reproduce the crash:

$ gdbrun python deepzoom_server.py /tmp/266981.svs
[...]
Program received signal SIGABRT, Aborted.
0x00007ffff6f34dd5 in __GI_raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:63
63	../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007ffff6f34dd5 in __GI_raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:63
#1  0x00007ffff6f37efb in __GI_abort () at abort.c:90
#2  0x00007ffff6f7025e in __libc_message (do_abort=2,
fmt=0x7ffff7067898 "*** glibc detected *** %s: %s: 0x%s ***\n")
    at ../sysdeps/unix/sysv/linux/libc_fatal.c:200
#3  0x00007ffff6f7a1b6 in malloc_printerr (action=3,
str=0x7ffff70640e7 "free(): invalid pointer", ptr=<optimized out>) at
malloc.c:4949
#4  0x00007ffff443df2b in opj_image_destroy () from
/usr/lib/x86_64-linux-gnu/libopenjpeg.so.2
#5  0x00007ffff4440d58 in j2k_decode () from
/usr/lib/x86_64-linux-gnu/libopenjpeg.so.2
#6  0x00007ffff53c003a in ?? () from /usr/lib/x86_64-linux-gnu/libopenslide.so.0
#7  0x00007ffff53be245 in ?? () from /usr/lib/x86_64-linux-gnu/libopenslide.so.0
#8  0x00007ffff53b956f in ?? () from /usr/lib/x86_64-linux-gnu/libopenslide.so.0
#9  0x00007ffff53bf48c in ?? () from /usr/lib/x86_64-linux-gnu/libopenslide.so.0
#10 0x00007ffff53b823e in ?? () from /usr/lib/x86_64-linux-gnu/libopenslide.so.0
#11 0x00007ffff53b854e in openslide_read_region () from
/usr/lib/x86_64-linux-gnu/libopenslide.so.0
[...]

-- 
Mathieu


More information about the openslide-users mailing list