Re: [poppler] Bug rendering PDF spec Version 1.5, PDF 1.4 configuration
In my experience valgrind does produce false positives, especially in optimized release builds. I'm not saying that this is the case here but it is a possibility. To better understand the issue you can use valgrind's capability to launch gdb when this happens and you from current instruction, disassembly and state of registers you might be able to figure out which value valgrind complains about and then from source code you can figure out whether this is a real uninitialized value or false positive. -- kjk On 11/1/07, Brad Hards <[EMAIL PROTECTED]> wrote: > My stress test is showing a problem with PDFReference15_v5.pdf (doesn't appear > to occur with PDFReference15_v6.pdf). > > I'm having a lot of trouble understanding the valgrind backtraces: > Doing PDFReference15_v5.pdf : ... > ...==6811== > ==6811== Conditional jump or move depends on uninitialised value(s) > ==6811==at 0x408BB1E: GfxDeviceGrayColorSpace::getGray(GfxColor*, int*) > (GfxState.cc:29) > ==6811==by 0x4051CB5: SplashOutputDev::updateFillColor(GfxState*) > (GfxState.h:1065) > ==6811==by 0x407DE5E: Gfx::doTilingPatternFill(GfxTilingPattern*, int, > int) (Gfx.cc:1701) > ==6811==by 0x408328B: Gfx::doPatternFill(int) (Gfx.cc:1588) > ==6811==by 0x4083601: Gfx::opFillStroke(Object*, int) (Gfx.cc:1498) > ==6811==by 0x4077602: Gfx::execOp(Object*, Object*, int) (Gfx.cc:717) > ==6811==by 0x40777BC: Gfx::go(int) (Gfx.cc:588) > ==6811==by 0x4077D26: Gfx::display(Object*, int) (Gfx.cc:557) > ==6811==by 0x40BD915: Page::displaySlice(OutputDev*, double, double, int, > int, int, int, int, int, int, int, Catalog*, int (*)(void*), > void*, int (*)(Annot*, void*), void*) (Page.cc:406) > ==6811==by 0x40BF9E6: PDFDoc::displayPageSlice(OutputDev*, int, double, > double, int, int, int, int, int, int, int, int, int (*)(void*), > void*, int (*)(Annot*, void*), void*) (PDFDoc.cc:396) > ==6811==by 0x41A8C6F: Poppler::Page::renderToImage(double, double, int, > int, int, int, Poppler::Page::Rotation) const (poppler-page.cc: > 185) > ==6811==by 0x804A513: main (stress-poppler-dir.cpp:48) > ==6811== > ==6811== Conditional jump or move depends on uninitialised value(s) > ==6811==at 0x40932C1: GfxDeviceGrayColorSpace::getRGB(GfxColor*, GfxRGB*) > (GfxState.cc:249) > ==6811==by 0x4051CCB: SplashOutputDev::updateFillColor(GfxState*) > (GfxState.h:1069) > ==6811==by 0x407DE5E: Gfx::doTilingPatternFill(GfxTilingPattern*, int, > int) (Gfx.cc:1701) > ==6811==by 0x408328B: Gfx::doPatternFill(int) (Gfx.cc:1588) > ==6811==by 0x4083601: Gfx::opFillStroke(Object*, int) (Gfx.cc:1498) > ==6811==by 0x4077602: Gfx::execOp(Object*, Object*, int) (Gfx.cc:717) > ==6811==by 0x40777BC: Gfx::go(int) (Gfx.cc:588) > ==6811==by 0x4077D26: Gfx::display(Object*, int) (Gfx.cc:557) > ==6811==by 0x40BD915: Page::displaySlice(OutputDev*, double, double, int, > int, int, int, int, int, int, int, Catalog*, int (*)(void*), > void*, int (*)(Annot*, void*), void*) (Page.cc:406) > ==6811==by 0x40BF9E6: PDFDoc::displayPageSlice(OutputDev*, int, double, > double, int, int, int, int, int, int, int, int, int (*)(void*), > void*, int (*)(Annot*, void*), void*) (PDFDoc.cc:396) > ==6811==by 0x41A8C6F: Poppler::Page::renderToImage(double, double, int, > int, int, int, Poppler::Page::Rotation) const (poppler-page.cc: > 185) > ==6811==by 0x804A513: main (stress-poppler-dir.cpp:48) > ... > . > > [Note: each dot represents a page that we rendered to an image - this is a > page towards the end] > > Any ideas? > > Brad > > ___ > poppler mailing list > poppler@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/poppler > > > ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
[poppler] Bug rendering PDF spec Version 1.5, PDF 1.4 configuration
My stress test is showing a problem with PDFReference15_v5.pdf (doesn't appear to occur with PDFReference15_v6.pdf). I'm having a lot of trouble understanding the valgrind backtraces: Doing PDFReference15_v5.pdf : ... ... ... ... ... ... ... ...==6811== ==6811== Conditional jump or move depends on uninitialised value(s) ==6811==at 0x408BB1E: GfxDeviceGrayColorSpace::getGray(GfxColor*, int*) (GfxState.cc:29) ==6811==by 0x4051CB5: SplashOutputDev::updateFillColor(GfxState*) (GfxState.h:1065) ==6811==by 0x407DE5E: Gfx::doTilingPatternFill(GfxTilingPattern*, int, int) (Gfx.cc:1701) ==6811==by 0x408328B: Gfx::doPatternFill(int) (Gfx.cc:1588) ==6811==by 0x4083601: Gfx::opFillStroke(Object*, int) (Gfx.cc:1498) ==6811==by 0x4077602: Gfx::execOp(Object*, Object*, int) (Gfx.cc:717) ==6811==by 0x40777BC: Gfx::go(int) (Gfx.cc:588) ==6811==by 0x4077D26: Gfx::display(Object*, int) (Gfx.cc:557) ==6811==by 0x40BD915: Page::displaySlice(OutputDev*, double, double, int, int, int, int, int, int, int, int, Catalog*, int (*)(void*), void*, int (*)(Annot*, void*), void*) (Page.cc:406) ==6811==by 0x40BF9E6: PDFDoc::displayPageSlice(OutputDev*, int, double, double, int, int, int, int, int, int, int, int, int (*)(void*), void*, int (*)(Annot*, void*), void*) (PDFDoc.cc:396) ==6811==by 0x41A8C6F: Poppler::Page::renderToImage(double, double, int, int, int, int, Poppler::Page::Rotation) const (poppler-page.cc: 185) ==6811==by 0x804A513: main (stress-poppler-dir.cpp:48) ==6811== ==6811== Conditional jump or move depends on uninitialised value(s) ==6811==at 0x40932C1: GfxDeviceGrayColorSpace::getRGB(GfxColor*, GfxRGB*) (GfxState.cc:249) ==6811==by 0x4051CCB: SplashOutputDev::updateFillColor(GfxState*) (GfxState.h:1069) ==6811==by 0x407DE5E: Gfx::doTilingPatternFill(GfxTilingPattern*, int, int) (Gfx.cc:1701) ==6811==by 0x408328B: Gfx::doPatternFill(int) (Gfx.cc:1588) ==6811==by 0x4083601: Gfx::opFillStroke(Object*, int) (Gfx.cc:1498) ==6811==by 0x4077602: Gfx::execOp(Object*, Object*, int) (Gfx.cc:717) ==6811==by 0x40777BC: Gfx::go(int) (Gfx.cc:588) ==6811==by 0x4077D26: Gfx::display(Object*, int) (Gfx.cc:557) ==6811==by 0x40BD915: Page::displaySlice(OutputDev*, double, double, int, int, int, int, int, int, int, int, Catalog*, int (*)(void*), void*, int (*)(Annot*, void*), void*) (Page.cc:406) ==6811==by 0x40BF9E6: PDFDoc::displayPageSlice(OutputDev*, int, double, double, int, int, int, int, int, int, int, int, int (*)(void*), void*, int (*)(Annot*, void*), void*) (PDFDoc.cc:396) ==6811==by 0x41A8C6F: Poppler::Page::renderToImage(double, double, int, int, int, int, Poppler::Page::Rotation) const (poppler-page.cc: 185) ==6811==by 0x804A513: main (stress-poppler-dir.cpp:48) ... . [Note: each dot represents a page that we rendered to an image - this is a page towards the end] Any ideas? Brad pgpaYl7N02ONx.pgp Description: PGP signature ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Poppler is thread-safe?
On Fri, Nov 02, 2007 at 12:17:48AM +0300, Saharov Alex wrote: > Hello poppler@lists.freedesktop.org, > > Poppler library is thread-safe? No. Although it would be nice if it was. -Jeff ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
[poppler] Poppler is thread-safe?
Hello poppler@lists.freedesktop.org, Poppler library is thread-safe? Where I can get additional information about this? Thanks! --- Alex Saharov ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
[poppler] Branch 'poppler-0.6' - 2 commits - glib/test-poppler-glib.cc poppler/GlobalParams.cc
glib/test-poppler-glib.cc |4 ++-- poppler/GlobalParams.cc |6 -- 2 files changed, 6 insertions(+), 4 deletions(-) New commits: commit 8f78e56ed6c997d02a90df119c90f08dded21ba0 Author: Jonathan Kew <[EMAIL PROTECTED]> Date: Thu Nov 1 21:50:49 2007 +0100 Do not try to parse directories when processing nameToUnicode dir. Fixes ugly warnings on mingw32 diff --git a/poppler/GlobalParams.cc b/poppler/GlobalParams.cc index de7c0cc..8e89afc 100644 --- a/poppler/GlobalParams.cc +++ b/poppler/GlobalParams.cc @@ -654,9 +654,11 @@ void GlobalParams::scanEncodingDirs() { GDir *dir; GDirEntry *entry; - dir = new GDir(POPPLER_DATADIR "/nameToUnicode", gFalse); + dir = new GDir(POPPLER_DATADIR "/nameToUnicode", gTrue); while (entry = dir->getNextEntry(), entry != NULL) { -parseNameToUnicode(entry->getFullPath()); +if (!entry->isDir()) { + parseNameToUnicode(entry->getFullPath()); +} delete entry; } delete dir; commit a343cf1d27dfa88a136b1efc3ea03a53d7c86db2 Author: Albert Astals Cid <[EMAIL PROTECTED]> Date: Thu Nov 1 21:49:46 2007 +0100 Add some castings to make it compile diff --git a/glib/test-poppler-glib.cc b/glib/test-poppler-glib.cc index 87d5234..96dc147 100644 --- a/glib/test-poppler-glib.cc +++ b/glib/test-poppler-glib.cc @@ -413,7 +413,7 @@ int main (int argc, char *argv[]) printf ("\tFound text \"Bitwise\" at positions:\n"); for (l = list; l != NULL; l = l->next) { - PopplerRectangle *rect = l->data; + PopplerRectangle *rect = (PopplerRectangle *)l->data; printf (" (%f,%f)-(%f,%f)\n", rect->x1, rect->y1, rect->x2, rect->y2); } @@ -484,7 +484,7 @@ int main (int argc, char *argv[]) char *filename, *strdate; filename = g_strdup_printf ("/tmp/attach%d", i); - attachment = l->data; + attachment = (PopplerAttachment *)l->data; g_print ("\tname: %s\n", attachment->name); g_print ("\tdescription: %s\n", attachment->description); g_print ("\tsize: %d\n", attachment->size); ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
[poppler] 2 commits - glib/test-poppler-glib.cc poppler/GlobalParams.cc
glib/test-poppler-glib.cc |4 ++-- poppler/GlobalParams.cc |6 -- 2 files changed, 6 insertions(+), 4 deletions(-) New commits: commit cb80112afed2c5b9642c3c43f1cc001ed88d08cb Author: Jonathan Kew <[EMAIL PROTECTED]> Date: Thu Nov 1 20:53:05 2007 +0100 Do not try to parse directories when processing nameToUnicode dir. Fixes ugly warnings on mingw32 diff --git a/poppler/GlobalParams.cc b/poppler/GlobalParams.cc index cf97e78..21b5044 100644 --- a/poppler/GlobalParams.cc +++ b/poppler/GlobalParams.cc @@ -655,9 +655,11 @@ void GlobalParams::scanEncodingDirs() { GDir *dir; GDirEntry *entry; - dir = new GDir(POPPLER_DATADIR "/nameToUnicode", gFalse); + dir = new GDir(POPPLER_DATADIR "/nameToUnicode", gTrue); while (entry = dir->getNextEntry(), entry != NULL) { -parseNameToUnicode(entry->getFullPath()); +if (!entry->isDir()) { + parseNameToUnicode(entry->getFullPath()); +} delete entry; } delete dir; commit ad6b888edff7b30be72df948c4052b9934a37705 Author: Albert Astals Cid <[EMAIL PROTECTED]> Date: Thu Nov 1 20:48:21 2007 +0100 Add some castings to make it compile diff --git a/glib/test-poppler-glib.cc b/glib/test-poppler-glib.cc index 6c8e840..a3cc38e 100644 --- a/glib/test-poppler-glib.cc +++ b/glib/test-poppler-glib.cc @@ -415,7 +415,7 @@ int main (int argc, char *argv[]) printf ("\tFound text \"Bitwise\" at positions:\n"); for (l = list; l != NULL; l = l->next) { - PopplerRectangle *rect = l->data; + PopplerRectangle *rect = (PopplerRectangle *)l->data; printf (" (%f,%f)-(%f,%f)\n", rect->x1, rect->y1, rect->x2, rect->y2); } @@ -486,7 +486,7 @@ int main (int argc, char *argv[]) char *filename, *strdate; filename = g_strdup_printf ("/tmp/attach%d", i); - attachment = l->data; + attachment = (PopplerAttachment *)l->data; g_print ("\tname: %s\n", attachment->name); g_print ("\tdescription: %s\n", attachment->description); g_print ("\tsize: %d\n", attachment->size); ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Bug: 3428 "[kpdf] print some pages"
A Dijous 01 Novembre 2007, Brad Hards va escriure: > http://bugs.freedesktop.org/show_bug.cgi?id=3428 > > What is the story with this bug? Can it be closed? Yeah, we do that now from qt frontends. > If we can close that, we can then close 3427. Well, 3427 depends on 3433 that it's still open, but about the comments i'm unsure if we should close it or not. Albert > > Brad ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Branch 'poppler-0.6' - 2 commits - glib/test-poppler-glib.c qt4/src qt4/tests
A Dijous 01 Novembre 2007, Brad Hards va escriure: > On Thursday 01 November 2007 09:45, Albert Astals Cid wrote: > > glib/test-poppler-glib.c | 512 > > --- qt4/src/poppler-qt4.h > > | 64 > > qt4/tests/Makefile.am| 13 > > qt4/tests/check_password.cpp | 87 ++ > > qt4/tests/stress-poppler-dir.cpp | 63 > > qt4/tests/test-poppler-qt4.cpp | 15 - > > 6 files changed, 231 insertions(+), 523 deletions(-) > > Can we close bug 4557? I'd say yes, actually it's an evince bug. Albert > > Brad ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] How to use poppler, to display PDF file in lesstif based application?
Hi Manuel, Using the poppler-glib API, you can render a PopplerPage to a GdkPixbuf or to a cairo_t. A GdkPixbuf is just an RGBA image that you can blit onto an X11 Drawable. If you want to use cairo, you can create a cairo surface using the lesstif widget's X11 Drawable, and then render onto the cairo surface. http://cgit.freedesktop.org/poppler/poppler/tree/glib/poppler-page.h http://www.cairographics.org/manual/cairo-XLib-Surfaces.html Hope that helps, Dom On 11/1/07, Manuel Reimer <[EMAIL PROTECTED]> wrote: > Hello, > > is it possible to display a PDF file in an lesstif based application? If > so: Which API would I have to use and where can I find the required > documentation? > > Thanks in advance > > CU > > Manuel > > ___ > poppler mailing list > poppler@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/poppler > -- Counting bodies like sheep to the rhythm of the war drums. ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
[poppler] How to use poppler, to display PDF file in lesstif based application?
Hello, is it possible to display a PDF file in an lesstif based application? If so: Which API would I have to use and where can I find the required documentation? Thanks in advance CU Manuel ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
[poppler] Bug: 3428 "[kpdf] print some pages"
http://bugs.freedesktop.org/show_bug.cgi?id=3428 What is the story with this bug? Can it be closed? If we can close that, we can then close 3427. Brad pgpeqP7vYJR3l.pgp Description: PGP signature ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler
Re: [poppler] Branch 'poppler-0.6' - 2 commits - glib/test-poppler-glib.c qt4/src qt4/tests
On Thursday 01 November 2007 09:45, Albert Astals Cid wrote: > glib/test-poppler-glib.c | 512 > --- qt4/src/poppler-qt4.h| > 64 > qt4/tests/Makefile.am| 13 > qt4/tests/check_password.cpp | 87 ++ > qt4/tests/stress-poppler-dir.cpp | 63 > qt4/tests/test-poppler-qt4.cpp | 15 - > 6 files changed, 231 insertions(+), 523 deletions(-) Can we close bug 4557? Brad pgpoG9RKTuXZe.pgp Description: PGP signature ___ poppler mailing list poppler@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/poppler