To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=111460 Issue #|111460 Summary|crash in GraphiteLayout if stlport_debug is active Component|gsl Version|OOO320m17 Platform|All URL| OS/Version|All Status|NEW Status whiteboard| Keywords| Resolution| Issue type|DEFECT Priority|P3 Subcomponent|code Assigned to|hdu Reported by|hdu
------- Additional comments from h...@openoffice.org Fri May 7 15:06:33 +0000 2010 ------- AW noticed in issue 111392 a strange crash on a non-product windows build if the bugdoc there was loaded and the required fonts were installed on the system. The problem is that the check GlyphSetIterator::operator!=() is not called if stlport_port debug is active, so that the check "gj != charGlyphs.second" in GraphiteLayout::Glyphs::fill_from() is not triggered though it should according to the overloaded operator. The stlport_debug code wraps the GlyphSetIterator and seems to keep its _M_iterator as type "int*" instead of a proper GlyphSetIterator, so of course the pointers get then compared directly instead of using the proper compare for the GlyphSetIterator. So the root cause of the problem seems to be the interaction of the used compiler + optimization + stlport_debug's iterator wrapper. @kstribley: we should probably rewrite the problem line graphite_layout.cxx:249 (for DEV300_m77) not to drive the compiler so hard. There are other related things such as that operator!= is defined as {!(*this==rhs;} and operator*() is overloaded, such that the != case is much more tricky than the corresponding operator== case. Especially since the dereference operator*() checks some assertions. --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@gsl.openoffice.org For additional commands, e-mail: issues-h...@gsl.openoffice.org --------------------------------------------------------------------- To unsubscribe, e-mail: allbugs-unsubscr...@openoffice.org For additional commands, e-mail: allbugs-h...@openoffice.org