I finally succedded in building the 148215 revision of wincairo (the newest revision currently don't build).

While this version runs fine on windows 7, I get the error below on Windows XP.

I have to admit that I'm really clueless about that. Is this an error in the cairo libs under certain circumstances, or is this just the effect of something going wrong in the Webkit invocation?

I hope that people out there with more knowledge than mine can help me here.

Thanks in advance

Thomas

==================
I get this access violation information

--- e:\projects\wincairorequirements\src\cairo\pixman\pixman\pixman-implementation.c
113F99F0  mov         ecx,dword ptr fs:[2Ch]
113F99F7  push        ebx
113F99F8  mov         ebx,dword ptr [esp+28h]
113F99FC  push        ebp
113F99FD  push        esi
113F99FE  mov         esi,eax
113F9A00  mov         eax,dword ptr [__tls_index (1148231Ch)]
====> 113F9A05  mov         edx,dword ptr [ecx+eax*4]

This is the call stack

cairo.dll!_pixman_implementation_lookup_composite(pixman_implementation_t * toplevel=0x00000000, pixman_op_t op=PIXMAN_OP_ADD, pixman_format_code_t src_format=PIXMAN_a8r8g8b8, unsigned int src_flags=0x02874a7f, pixman_format_code_t mask_format=0x00000000, unsigned int mask_flags=0x00002000, pixman_format_code_t dest_format=PIXMAN_a8r8g8b8, unsigned int dest_flags=0x02074a7f, pixman_implementation_t * * out_imp=0x00115cfc, void (pixman_implementation_t *, pixman_composite_info_t *)* * out_func=0x00115cf8) Line 85 + 0x15 bytes C cairo.dll!pixman_image_composite32(pixman_op_t op=, pixman_image * src=, pixman_image * mask=, pixman_image * dest=, int src_x=, int src_y=, int mask_x=, int mask_y=, int dest_x=, int dest_y=, int width=, int height=) Line 676 + 0x3c bytes C cairo.dll!composite_glyphs_via_mask(void * _dst=0x101f56e0, _cairo_operator op=CAIRO_OPERATOR_OVER, _cairo_surface * _src=0x00000000, int src_x=0x00000000, int src_y=0x00000000, int dst_x=0x00000000, int dst_y=0x00000000, cairo_composite_glyphs_info_t * info=0x00000000) Line 1094 + 0xd bytes C cairo.dll!composite_glyphs(void * _dst=, _cairo_operator op=, _cairo_surface * _src=, int src_x=, int src_y=, int dst_x=, int dst_y=, cairo_composite_glyphs_info_t * info=) Line 1137 + 0x20 bytes C
     msvcr80.dll!78147344()
[Frames below may be incorrect and/or missing, no symbols loaded for msvcr80.dll] cairo.dll!_cairo_scaled_glyph_lookup(_cairo_scaled_font * scaled_font=0x78134d83, unsigned long index=0x07a90000, _cairo_scaled_glyph_info info=0x00000000, _cairo_scaled_glyph * * scaled_glyph_ret=0x000000b0) Line 2933 + 0x10 bytes C
     ntdll.dll!7c9201db()
cairo.dll!pixman_image_create_solid_fill(const pixman_color * color=0x00000000) Line 80 + 0xd bytes C cairo.dll!_cairo_surface_init(_cairo_surface * surface=0x00000000, const _cairo_surface_backend * backend=, _cairo_device * device=, _cairo_content content=) Line 420 C cairo.dll!composite_glyphs(const cairo_traps_compositor * compositor=0x11481a78, _cairo_surface * dst=0x101f56e0, void * closure=0x001168d0, _cairo_operator op=CAIRO_OPERATOR_OVER, _cairo_surface * src=0x101d59f8, int src_x=0x00000000, int src_y=0x00000000, int dst_x=0x00000000, int dst_y=0x00000000, const _cairo_rectangle_int * extents=0x00116958, _cairo_clip * clip=0x101d59b8) Line 2259 + 0x25 bytes C cairo.dll!clip_and_composite(const cairo_traps_compositor * compositor=0x11481a78, _cairo_composite_rectangles * extents=0x00000000, _cairo_int_status (const cairo_traps_compositor *, _cairo_surface *, void *, _cairo_operator, _cairo_surface *, int, int, int, int, const _cairo_rectangle_int *, _cairo_clip *)* draw_func=0x113b1450, _cairo_int_status (const cairo_traps_compositor *, _cairo_surface *, void *, _cairo_operator, _cairo_surface *, int, int, int, int, const _cairo_rectangle_int *, _cairo_clip *)* mask_func=0x00000000, void * draw_closure=0x001168d0, unsigned int need_clip=0x00000001) Line 1043 + 0x2b bytes C cairo.dll!_cairo_traps_compositor_glyphs(const cairo_compositor * _compositor=0x11481a78, _cairo_composite_rectangles * extents=0x00116920, _cairo_scaled_font * scaled_font=0x1017ec00, cairo_glyph_t * glyphs=0x001175e0, int num_glyphs=0x00000005, int overlap=0x00000001) Line 2302 + 0x21 bytes C cairo.dll!_cairo_compositor_glyphs(const cairo_compositor * compositor=0x11481a3c, _cairo_surface * surface=0x101f56e0, _cairo_operator op=CAIRO_OPERATOR_CLEAR, const _cairo_pattern * source=0x00000000, cairo_glyph_t * glyphs=0x001175e0, int num_glyphs=0x00000005, _cairo_scaled_font * scaled_font=0x1017ec00, const _cairo_clip * clip=0x1017efb0) Line 253 C cairo.dll!_cairo_image_surface_glyphs(void * abstract_surface=0x101f56e0, _cairo_operator op=CAIRO_OPERATOR_OVER, const _cairo_pattern * source=0x00116cd8, cairo_glyph_t * glyphs=0x001175e0, int num_glyphs=0x00000005, _cairo_scaled_font * scaled_font=0x1017ec00, const _cairo_clip * clip=0x1017efb0) Line 999 + 0x2d bytes C cairo.dll!_cairo_gstate_show_text_glyphs(_cairo_gstate * gstate=0x00000000, const cairo_glyph_t * glyphs=0x0011a148, int num_glyphs=0x00000005, _cairo_glyph_text_info * info=0x00000000) Line 2013 + 0x1b4 bytes C cairo.dll!_cairo_default_context_glyphs(void * abstract_cr=0x101d5140, const cairo_glyph_t * glyphs=0x0011a148, int num_glyphs=0x00000005, _cairo_glyph_text_info * info=0x00000000) Line 1290 + 0x1b bytes C cairo.dll!cairo_show_glyphs(_cairo * cr=0x101d5140, const cairo_glyph_t * glyphs=0x0011a148, int num_glyphs=0x00000005) Line 3315 + 0x10 bytes C WebKit.dll!WebCore::drawGlyphsToContext(_cairo * context=0x00000000, const WebCore::SimpleFontData * font=0x00000000, cairo_glyph_t * glyphs=0x0011a148, int numGlyphs=0x00000000) Line 56 C++ WebKit.dll!WebCore::Font::drawGlyphs(WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::SimpleFontData * font=0x7fe40500, const WebCore::GlyphBuffer & glyphBuffer={...}, int from=0x7fe48b60, int numGlyphs=0x00000028, const WebCore::FloatPoint & point={...}) Line 119 + 0xc bytes C++ WebKit.dll!WebCore::Font::drawGlyphBuffer(WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::TextRun & run={...}, const WebCore::GlyphBuffer & glyphBuffer={...}, const WebCore::FloatPoint & point={...}) Line 513 + 0x16 bytes C++ WebKit.dll!WebCore::Font::drawSimpleText(WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::TextRun & run={...}, const WebCore::FloatPoint & point={...}, int from=0x00000000, int to=0x00000005) Line 458 C++ WebKit.dll!WebCore::Font::drawText(WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::TextRun & run={...}, const WebCore::FloatPoint & point={...}, int from=0x00000000, int to=0x00000005, WebCore::Font::CustomFontNotReadyAction customFontNotReadyAction=DoNotPaintIfFontNotReady) Line 175 + 0x12 bytes C++ WebKit.dll!WebCore::GraphicsContext::drawText(const WebCore::Font & font={...}, const WebCore::TextRun & run={...}, const WebCore::FloatPoint & point={...}, int from=0x00000000, int to=0x00000005) Line 418 C++ WebKit.dll!WebCore::paintTextWithShadows(WebCore::GraphicsContext * context=0x00000000, const WebCore::Font & font={...}, const WebCore::TextRun & textRun={...}, const WTF::AtomicString & emphasisMark={...}, int emphasisMarkOffset=0x00000000, int startOffset=0x00000000, int endOffset=0x00000005, int truncationPoint=0x00000005, const WebCore::FloatPoint & textOrigin={...}, const WebCore::FloatRect & boxRect={...}, const WebCore::ShadowData * shadow=0x00000000, bool stroked=false, bool horizontal=true) Line 429 C++ WebKit.dll!WebCore::InlineTextBox::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::LayoutUnit __formal={...}, WebCore::LayoutUnit __formal={...}) Line 733 C++ WebKit.dll!WebCore::InlineFlowBox::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::LayoutUnit lineTop={...}, WebCore::LayoutUnit lineBottom={...}) Line 1142 + 0x19 bytes C++ WebKit.dll!WebCore::RootInlineBox::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::LayoutUnit lineTop={...}, WebCore::LayoutUnit lineBottom={...}) Line 214 C++
 WebKit.dll!WebCore::RenderLineBoxList::paint(WebCore::RenderBoxModelObject * 
renderer=0x7fe91624, WebCore::PaintInfo & paintInfo={...}, const 
WebCore::LayoutPoint & paintOffset={...})  Line 262 + 0x16 bytes    C++
WebKit.dll!WebCore::RenderBlock::paintContents(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3065 + 0x18 bytes C++ WebKit.dll!WebCore::RenderBlock::paintObject(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3189 C++ WebKit.dll!WebCore::RenderBlock::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 2900 C++
 WebKit.dll!WebCore::RenderTableSection::paintCell(WebCore::RenderTableCell * 
cell=0x7fe91624, WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint 
& paintOffset={...})  Line 976 + 0x11 bytes    C++
WebKit.dll!WebCore::RenderTableSection::paintObject(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 1125 + 0x16 bytes C++ WebKit.dll!WebCore::RenderTableSection::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 925 C++ WebKit.dll!WebCore::RenderTable::paintObject(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 660 + 0x14 bytes C++ WebKit.dll!WebCore::RenderTable::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 630 C++ WebKit.dll!WebCore::RenderBlock::paintChild(WebCore::RenderBox * child=0x7fe913cc, WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::PaintInfo & paintInfoForChild={...}, bool usePrintRect=false) Line 3119 C++ WebKit.dll!WebCore::RenderBlock::paintChildren(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::PaintInfo & paintInfoForChild={...}, bool usePrintRect=false) Line 3085 + 0x15 bytes C++ WebKit.dll!WebCore::RenderBlock::paintContents(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3078 + 0x1b bytes C++ WebKit.dll!WebCore::RenderBlock::paintObject(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3189 C++ WebKit.dll!WebCore::RenderBlock::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 2900 C++ WebKit.dll!WebCore::RenderBlock::paintChild(WebCore::RenderBox * child=0x7fe91360, WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::PaintInfo & paintInfoForChild={...}, bool usePrintRect=false) Line 3119 C++ WebKit.dll!WebCore::RenderBlock::paintChildren(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::PaintInfo & paintInfoForChild={...}, bool usePrintRect=false) Line 3085 + 0x15 bytes C++ WebKit.dll!WebCore::RenderBlock::paintContents(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3078 + 0x1b bytes C++ WebKit.dll!WebCore::RenderBlock::paintObject(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3189 C++ WebKit.dll!WebCore::RenderBlock::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 2900 C++ WebKit.dll!WebCore::RenderBlock::paintChild(WebCore::RenderBox * child=0x7fe912f4, WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::PaintInfo & paintInfoForChild={...}, bool usePrintRect=false) Line 3119 C++ WebKit.dll!WebCore::RenderBlock::paintChildren(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}, WebCore::PaintInfo & paintInfoForChild={...}, bool usePrintRect=false) Line 3085 + 0x15 bytes C++ WebKit.dll!WebCore::RenderBlock::paintContents(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3078 + 0x1b bytes C++ WebKit.dll!WebCore::RenderBlock::paintObject(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 3189 C++ WebKit.dll!WebCore::RenderBlock::paint(WebCore::PaintInfo & paintInfo={...}, const WebCore::LayoutPoint & paintOffset={...}) Line 2900 C++
 WebKit.dll!WebCore::RenderLayer::paintForegroundForFragmentsWithPhase(WebCore::PaintPhase 
phase=PaintPhaseForeground, const 
WTF::Vector<WebCore::LayerFragment,1,WTF::CrashOnOverflow> & layerFragments={...}, 
WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo 
& localPaintingInfo={...}, unsigned int paintBehavior=0x00000000, WebCore::RenderObject * 
paintingRootForRenderer=0x00000000)  Line 4167    C++
WebKit.dll!WebCore::RenderLayer::paintForegroundForFragments(const WTF::Vector<WebCore::LayerFragment,1,WTF::CrashOnOverflow> & layerFragments={...}, WebCore::GraphicsContext * context=0x0012f1dc, WebCore::GraphicsContext * transparencyLayerContext=0x0012f1dc, const WebCore::LayoutRect & transparencyPaintDirtyRect={...}, bool haveTransparency=false, const WebCore::RenderLayer::LayerPaintingInfo & localPaintingInfo={...}, unsigned int paintBehavior=0x00000000, WebCore::RenderObject * paintingRootForRenderer=0x00000000, bool selectionOnly=false, bool forceBlackText=false) Line 4142 C++
 WebKit.dll!WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext * 
context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo & 
paintingInfo={...}, unsigned int paintFlags=0x000000e0)  Line 3873    C++
 
WebKit.dll!WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext
 * context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo & 
paintingInfo={...}, unsigned int paintFlags=0x000000e0)  Line 3689 + 0x13 bytes    
C++
WebKit.dll!WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo & paintingInfo={...}, unsigned int paintFlags=0x000000e0) Line 3671 + 0x10 bytes C++
 WebKit.dll!WebCore::RenderLayer::paintList(WTF::Vector<WebCore::RenderLayer 
*,0,WTF::CrashOnOverflow> * list=0x7fec91b0, WebCore::GraphicsContext * 
context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo & 
paintingInfo={...}, unsigned int paintFlags=0x000000e0)  Line 3959    C++
 WebKit.dll!WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext * 
context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo & 
paintingInfo={...}, unsigned int paintFlags=0x000000e0)  Line 3884    C++
 
WebKit.dll!WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext
 * context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo & 
paintingInfo={...}, unsigned int paintFlags=0x00000000)  Line 3689 + 0x13 bytes    
C++
WebKit.dll!WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::RenderLayer::LayerPaintingInfo & paintingInfo={...}, unsigned int paintFlags=0x00000000) Line 3671 + 0x10 bytes C++ WebKit.dll!WebCore::RenderLayer::paint(WebCore::GraphicsContext * context=0x0012f1dc, const WebCore::LayoutRect & damageRect={...}, unsigned int paintBehavior=0x00000000, WebCore::RenderObject * paintingRoot=0x00000000, WebCore::RenderRegion * region=0x00000000, unsigned int paintFlags=0x00000000) Line 3489 C++ WebKit.dll!WebCore::FrameView::paintContents(WebCore::GraphicsContext * p=0x0012f1dc, const WebCore::IntRect & rect={...}) Line 3533 C++ WebKit.dll!WebCore::ScrollView::paint(WebCore::GraphicsContext * context=0x00000000, const WebCore::IntRect & rect={...}) Line 1087 C++ WebKit.dll!WebView::paintIntoBackingStore(WebCore::FrameView * frameView=0x7fe65c00, HDC__ * bitmapDC=0x00000000, const WebCore::IntRect & dirtyRect={...}, WebView::WindowsToPaint windowsToPaint=PaintWebViewOnly) Line 1170 C++ WebKit.dll!WebView::updateBackingStore(WebCore::FrameView * frameView=0x7fe65c00, HDC__ * dc=0x35010933, bool backingStoreCompletelyDirty=true, WebView::WindowsToPaint windowsToPaint=PaintWebViewOnly) Line 1000 + 0x30 bytes C++ WebKit.dll!WebView::paint(HDC__ * dc=0x00000000, long options=0x00000000) Line 1104 C++ WebKit.dll!WebView::WebViewWndProc(HWND__ * hWnd=0x000502fe, unsigned int message=0x0000000f, unsigned int wParam=0x00000000, long lParam=0x00000000) Line 2173 C++
<snip>
_______________________________________________
webkit-help mailing list
webkit-help@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-help

Reply via email to