Debugging von Segmentation fault in XPDF
Bernd Fehling
befehl at ub.uni-bielefeld.de
Wed Feb 9 15:18:21 CET 2005
Florian Lohoff wrote:
>
> Valgrind wirft dieses:
>
> ==10536== Invalid read of size 4
> ==10536== at 0x8075B7E: JArithmeticDecoder::readByte() (JArithmeticDecoder.cc:107)
> ==10536== by 0x8075627: JArithmeticDecoder::~JArithmeticDecoder() (JArithmeticDecoder.cc:96)
> ==10536== by 0x80783F7: JBIG2Stream::~JBIG2Stream() (JBIG2Stream.cc:1144)
> ==10536== by 0x808B90C: Object::free() (Object.cc:129)
> ==10536== Address 0x0 is not stack'd, malloc'd or (recently) free'd
> ==10536==
> ==10536== Process terminating with default action of signal 11 (SIGSEGV): dumping core
> ==10536== Access not within mapped region at address 0x0
> ==10536== at 0x8075B7E: JArithmeticDecoder::readByte() (JArithmeticDecoder.cc:107)
> ==10536== by 0x8075627: JArithmeticDecoder::~JArithmeticDecoder() (JArithmeticDecoder.cc:96)
> ==10536== by 0x80783F7: JBIG2Stream::~JBIG2Stream() (JBIG2Stream.cc:1144)
> ==10536== by 0x808B90C: Object::free() (Object.cc:129)
>
> 1123 JBIG2Stream::~JBIG2Stream() {
> [...]
> 1141 delete huffDecoder;
> 1142 delete mmrDecoder;
> 1143 if (pageBitmap) {
> 1144 delete pageBitmap;
> 1145 }
> 1146 if (segments) {
> 1147 deleteGList(segments, JBIG2Segment);
> 1148 }
>
>
> object.cc
> 109 void Object::free() {
> [...]
> 126 break;
> 127 case objStream:
> 128 if (!stream->decRef()) {
> 129 delete stream;
> 130 }
> 131 break;
>
> Flo
Efence gräbt an einer anderen Stelle.
Mal sehen wo es denn wirklich hängt.
#8 0x080aa3a7 in gmalloc (size=1073960168) at gmem.c:89
#9 0x080aa47a in copyString (s=0x58305f80 "Tj") at gmem.c:201
#10 0x0808844a in Lexer::getObj(Object*) (this=0x58305f68,
obj=0x58303ff0) at Object.h:103
#11 0x08090daf in Parser::shift() (this=0x58303fdc) at Parser.cc:230
#12 0x080906ac in Parser::getObj(Object*, unsigned char*, int, int, int)
(this=0x58303fdc, obj=0xbffff290, fileKey=0x0, keyLength=0, objNum=0,
objGen=0) at Parser.cc:152
#13 0x080557b7 in Gfx::go(int) (this=0x4d617f98, topLevel=1) at Gfx.cc:590
#14 0x0805560e in Gfx::display(Object*, int) (this=0x4d617f98,
obj=0xbffff370, topLevel=1) at Gfx.cc:523
#15 0x0808fcbd in Page::displaySlice(OutputDev*, double, double, int,
int, int, int, int, int, Links*, Catalog*, int (*)(void*), void*)
(this=0x45933fd8, out=0x4bd52f80, hDPI=72, vDPI=72, rotate=1109049244,
crop=1, sliceX=-1, sliceY=-1, sliceW=-1, sliceH=-1073745040, links=0x0,
catalog=0x43af6fa8, abortCheckCbk=0, abortCheckCbkData=0x0) at Page.cc:319
#16 0x0808f892 in Page::display(OutputDev*, double, double, int, int,
Links*, Catalog*, int (*)(void*), void*) (this=0x45933fd8,
out=0x4bd52f80, hDPI=72, vDPI=72, rotate=0, crop=1, links=0x0,
catalog=0x43af6fa8, abortCheckCbk=0, abortCheckCbkData=0x0) at Page.cc:226
#17 0x08091752 in PDFDoc::displayPages(OutputDev*, int, int, double,
double, int, int, int, int (*)(void*), void*) (this=0x421a4fd4,
out=0x4bd52f80, firstPage=1, lastPage=126, hDPI=72, vDPI=72, rotate=0,
crop=1, doLinks=0, abortCheckCbk=0, abortCheckCbkData=0x0) at PDFDoc.cc:234
#18 0x080a75ba in main (argc=3, argv=0x4bd52f80) at pdftotext.cc:241
Bernd
More information about the Linux
mailing list