Hello,
I also suffer from the crashes, but they seem to depend on which
directory xpdf was started. When started from one with lots of files
then it crashes ASA I select "Save as". According to gdb it crashes
there:
#9 0x00007ffff69065c5 in ?? () from /usr/lib/libXt.so.6
#10 0x00007ffff6906f78 in _XtCreateWidget () from /usr/lib/libXt.so.6
#11 0x00007ffff690736e in XtCreateWidget () from /usr/lib/libXt.so.6
#12 0x00007ffff7af1528 in XmCreateFileSelectionDialog () from
/usr/lib/libXm.so.2
#13 0x000000000042308a in XPDFViewer::initSaveAsDialog (this=0x6a4bf0) at
build/XPDFViewer.cc:3137
#14 0x0000000000423180 in XPDFViewer::mapSaveAsDialog (this=0x6a4bf0) at
build/XPDFViewer.cc:3158
... but it doesn't make sense:
(gdb) print args
$1 = {{name = 0x640619 "okLabelString", value = 10595168}, {name = 0x6406d6
"pattern", value = 10371536}, {name = 0x63fc49 "dialogTitle", value =
10897488}, {name = 0x63fc3d "dialogStyle", value = 1}, {name = 0x63f817
"autoUnmanage", value = 1}, {name = 0x63e4c0 "", value = 140737296042423},
{name = 0x4000500000006 <Address 0x4000500000006 out of bounds>, value = 209},
{name = 0x16 <Address 0x16 out of bounds>, value = 140737296048741}, {name =
0x67acc0 "", value = 140737488346016}, {name = 0x67ad00 "", value = 6794560},
{name = 0x67ad3c "h", value = 6798720}, {name = 0x67bd50 "", value = 6794548},
{name = 0x0, value = 8}, {name = 0x67acd8 "", value = 140737488346184}, {name =
0x67acc0 "", value = 140737488346176}, {name = 0x6e6 <Address 0x6e6 out of
bounds>, value = 140737296050332}, {name = 0x6aaa80 "", value =
140737488347792}, {name = 0x679650 "\020,j", value = 0}, {name = 0x7ffff6b4c100
"\r", value = 140737326862414}, {name = 0x7fffffffdc20 "H\334\377\377\377\177",
value = 140737488346176}}
However, Valgrind shows A LOT of memory corruption when "Save As"
starts. Someone should really have a closer look!
==20637== Memcheck, a memory error detector
==20637== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==20637== Using Valgrind-3.6.0.SVN-Debian and LibVEX; rerun with -h for
copyright info
==20637== Command: /var/tmp/xpdf-3.02/build/xpdf /tmp/doc111.pdf
==20637==
==20637== Source and destination overlap in memcpy(0x8ed9380, 0x8ed93a0, 96)
==20637== at 0x4C25F6A: memcpy (mc_replace_strmem.c:497)
==20637== by 0x4EFC65D: _XmBuildResources (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EE5B3B: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60D7A30: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D7A30: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D7FBC: XtInitializeWidgetClass (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D8FCF: _XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D936D: XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x426DC5: XPDFViewer::initWindow(int) (XPDFViewer.cc:1484)
==20637== by 0x428E00: XPDFViewer::XPDFViewer(XPDFApp*, GooString*, int,
GooString*, int, GooString*, GooString*) (XPDFViewer.cc:272)
==20637== by 0x41ABAB: XPDFApp::open(GooString*, int, GooString*,
GooString*) (XPDFApp.cc:228)
==20637== by 0x429E0F: main (xpdf.cc:313)
==20637==
==20637== Conditional jump or move depends on uninitialised value(s)
==20637== at 0x4EF0C08: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x610713C: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x61073DC: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x6107B75: _XtTranslateEvent (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DDF3C: XtDispatchEventToWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DE576: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DD560: XtDispatchEvent (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DD6F2: XtAppMainLoop (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4299E9: main (xpdf.cc:318)
==20637==
==20637== Invalid write of size 8
==20637== at 0x4EC2822: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC4B84: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC5763: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60D7B18: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D85C4: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D8F77: _XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D936D: XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC6527: XmCreateFileSelectionDialog (in
/usr/lib/libXm.so.2.0.1)
==20637== by 0x423089: XPDFViewer::initSaveAsDialog() (XPDFViewer.cc:3137)
==20637== by 0x42317F: XPDFViewer::mapSaveAsDialog() (XPDFViewer.cc:3158)
==20637== by 0x60CFB2F: XtCallCallbackList (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EF08F1: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== Address 0x8ea7100 is 0 bytes after a block of size 512 alloc'd
==20637== at 0x4C2380C: calloc (vg_replace_malloc.c:467)
==20637== by 0x60CF5CB: XtCalloc (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC2757: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC4B84: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC5763: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60D7B18: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D85C4: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D8F77: _XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D936D: XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC6527: XmCreateFileSelectionDialog (in
/usr/lib/libXm.so.2.0.1)
==20637== by 0x423089: XPDFViewer::initSaveAsDialog() (XPDFViewer.cc:3137)
==20637== by 0x42317F: XPDFViewer::mapSaveAsDialog() (XPDFViewer.cc:3158)
==20637==
==20637== Invalid read of size 8
==20637== at 0x4EDC6F8: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EDD870: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60F57A1: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60F646D: XtSetValues (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC289B: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC4B84: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC5763: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60D7B18: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D85C4: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D8F77: _XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D936D: XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC6527: XmCreateFileSelectionDialog (in
/usr/lib/libXm.so.2.0.1)
==20637== Address 0x8ea7100 is 0 bytes after a block of size 512 alloc'd
==20637== at 0x4C2380C: calloc (vg_replace_malloc.c:467)
==20637== by 0x60CF5CB: XtCalloc (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC2757: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC4B84: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC5763: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60D7B18: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D85C4: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D8F77: _XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D936D: XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC6527: XmCreateFileSelectionDialog (in
/usr/lib/libXm.so.2.0.1)
==20637== by 0x423089: XPDFViewer::initSaveAsDialog() (XPDFViewer.cc:3137)
==20637== by 0x42317F: XPDFViewer::mapSaveAsDialog() (XPDFViewer.cc:3158)
==20637==
==20637== Invalid read of size 8
==20637== at 0x4EC28B5: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC4B84: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC5763: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60D7B18: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D85C4: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D8F77: _XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D936D: XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC6527: XmCreateFileSelectionDialog (in
/usr/lib/libXm.so.2.0.1)
==20637== by 0x423089: XPDFViewer::initSaveAsDialog() (XPDFViewer.cc:3137)
==20637== by 0x42317F: XPDFViewer::mapSaveAsDialog() (XPDFViewer.cc:3158)
==20637== by 0x60CFB2F: XtCallCallbackList (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EF08F1: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== Address 0x8ea7100 is 0 bytes after a block of size 512 alloc'd
==20637== at 0x4C2380C: calloc (vg_replace_malloc.c:467)
==20637== by 0x60CF5CB: XtCalloc (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC2757: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC4B84: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x4EC5763: ??? (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x60D7B18: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D85C4: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D8F77: _XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60D936D: XtCreateWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EC6527: XmCreateFileSelectionDialog (in
/usr/lib/libXm.so.2.0.1)
==20637== by 0x423089: XPDFViewer::initSaveAsDialog() (XPDFViewer.cc:3137)
==20637== by 0x42317F: XPDFViewer::mapSaveAsDialog() (XPDFViewer.cc:3158)
==20637==
valgrind: m_mallocfree.c:248 (get_bszB_as_is): Assertion 'bszB_lo == bszB_hi'
failed.
valgrind: Heap block lo/hi size mismatch: lo = 576, hi = 166900864.
This is probably caused by your program erroneously writing past the
end of a heap block and corrupting heap metadata. If you fix any
invalid writes reported by Memcheck, this assertion failure will
probably go away. Please try that before reporting this as a bug.
==20637== at 0x3802B0A7: report_and_quit (m_libcassert.c:191)
==20637== by 0x3802B2E0: vgPlain_assert_fail (m_libcassert.c:265)
==20637== by 0x38037A4D: vgPlain_arena_free (m_mallocfree.c:248)
==20637== by 0x38001DE9: die_and_free_mem (mc_malloc_wrappers.c:123)
==20637== by 0x380662C1: vgPlain_scheduler (scheduler.c:1394)
==20637== by 0x3808F194: run_a_thread_NORETURN (syswrap-linux.c:94)
sched status:
running_tid=1
Thread 1: status = VgTs_Runnable
==20637== at 0x4C240FD: free (vg_replace_malloc.c:366)
==20637== by 0x41EA13: XPDFCoreTile::~XPDFCoreTile() (XPDFCore.cc:79)
==20637== by 0x418952: PDFCorePage::~PDFCorePage() (PDFCore.cc:49)
==20637== by 0x419F93: PDFCore::~PDFCore() (PDFCore.cc:134)
==20637== by 0x41E21D: XPDFCore::~XPDFCore() (XPDFCore.cc:174)
==20637== by 0x4289C2: XPDFViewer::~XPDFViewer() (XPDFViewer.cc:372)
==20637== by 0x41A7BB: XPDFApp::quit() (XPDFApp.cc:326)
==20637== by 0x427F62: XPDFViewer::execCmd(GooString*, _XEvent*)
(XPDFViewer.cc:731)
==20637== by 0x42824A: XPDFViewer::keyPressCbk(void*, unsigned long,
unsigned int, _XEvent*) (XPDFViewer.cc:595)
==20637== by 0x41CA87: XPDFCore::inputCbk(_WidgetRec*, void*, void*)
(XPDFCore.cc:1158)
==20637== by 0x60CFB2F: XtCallCallbackList (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4EBD1B8: _XmDrawingAreaInput (in /usr/lib/libXm.so.2.0.1)
==20637== by 0x610713C: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x61073DC: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x6107B75: _XtTranslateEvent (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DDF3C: XtDispatchEventToWidget (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DE576: ??? (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DD560: XtDispatchEvent (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x60DD6F2: XtAppMainLoop (in /usr/lib/libXt.so.6.0.0)
==20637== by 0x4299E9: main (xpdf.cc:318)
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]