Hi all,

recently I discovered a segfault in enblend. It is a fairly big project, so i can not *simply* provide input images or the whole core dump, but here's a stacktrace:

#0 0x00000000004dc928 in void vigra::read_bands<vigra::Diff2D, vigra::MultiImageVectorMaskAccessor4<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> >, vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra_ext::WriteFunctorAccessor<vigra::Threshold<unsigned char, unsigned char>, vigra::StandardValueAccessor<unsigned char> > >, unsigned char>(vigra::Decoder*, vigra::Diff2D, vigra::MultiImageVectorMaskAccessor4<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> >, vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra_ext::WriteFunctorAccessor<vigra::Threshold<unsigned char, unsigned char>, vigra::StandardValueAccessor<unsigned char> > >, unsigned char) () #1 0x0000000000522de8 in void vigra::importVectorImage<vigra::Diff2D, vigra::MultiImageVectorMaskAccessor4<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> >, vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra_ext::WriteFunctorAccessor<vigra::Threshold<unsigned char, unsigned char>, vigra::StandardValueAccessor<unsigned char> > > >(vigra::ImageImportInfo const&, vigra::Diff2D, vigra::MultiImageVectorMaskAccessor4<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> >, vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra_ext::WriteFunctorAccessor<vigra::Threshold<unsigned char, unsigned char>, vigra::StandardValueAccessor<unsigned char> > >) () #2 0x0000000000523663 in void vigra::importImageAlpha<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> >, vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra_ext::WriteFunctorAccessor<vigra::Threshold<unsigned char, unsigned char>, vigra::StandardValueAccessor<unsigned char> > >(vigra::ImageImportInfo const&, std::pair<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> > >, std::pair<vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra_ext::WriteFunctorAccessor<vigra::Threshold<unsigned char, unsigned char>, vigra::StandardValueAccessor<unsigned char> > >) () #3 0x0000000000523815 in void enblend::import<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> >, vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra::StandardValueAccessor<unsigned char> >(vigra::ImageImportInfo const&, std::pair<vigra::BasicImageIterator<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, vigra::RGBValue<unsigned char, 0u, 1u, 2u>**>, vigra::RGBAccessor<vigra::RGBValue<unsigned char, 0u, 1u, 2u> > > const&, std::pair<vigra::BasicImageIterator<unsigned char, unsigned char**>, vigra::StandardValueAccessor<unsigned char> > const&) () #4 0x000000000055da47 in std::pair<vigra::BasicImage<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, std::allocator<vigra::RGBValue<unsigned char, 0u, 1u, 2u> > >*, vigra::BasicImage<unsigned char, std::allocator<unsigned char> >*> enblend::assemble<vigra::BasicImage<vigra::RGBValue<unsigned char, 0u, 1u, 2u>, std::allocator<vigra::RGBValue<unsigned char, 0u, 1u, 2u> > >, vigra::BasicImage<unsigned char, std::allocator<unsigned char> > >(std::list<vigra::ImageImportInfo*, std::allocator<vigra::ImageImportInfo*> >&, vigra::Rect2D&, vigra::Rect2D&) () #5 0x00000000005c1119 in void enblend::enblendMain<vigra::RGBValue<unsigned char, 0u, 1u, 2u> >(std::list<std::string, std::allocator<std::string> > const&, std::list<vigra::ImageImportInfo*, std::allocator<vigra::ImageImportInfo*> > const&, vigra::ImageExportInfo&, vigra::Rect2D&) ()
#6  0x0000000000476396 in main ()



enblend version is

$ enblend --version
enblend 4.1-cd12da20db1a

Recent version of the Ubuntu PPA.

Solved the issue for myself by splitting the project up to 4 smaller images, then manually blending those in gimp. Is it just a memory issue? But then I'd prefer a bad_alloc over a segfault :)

Can I provide further information to solve the bug?

Thx,
Benjamin

--
You received this message because you are subscribed to the Google Groups "Hugin and 
other free panoramic software" group.
A list of frequently asked questions is available at: 
http://wiki.panotools.org/Hugin_FAQ
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at http://groups.google.com/group/hugin-ptx

Reply via email to