Re: 回复: cairo memory leak
Maarten Bosmans <[email protected]>
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <CA+CvcKTDqhceVaeVDdXxCpUhLq19eShP4SshQD31sWeWik1L+Q@mail.gmail.com> |
Please, keep conversation on the list. (use reply-all) Maarten 2011/10/14 唐博 <[email protected]>: > Thank you very much. I have checked it , it stilled leak 10 bytes. I have no idea with it. > > ----- 原邮件 ----- > 发件人: Maarten Bosmans <[email protected]> > 收件人: 唐博 <[email protected]> > 抄送: "[email protected]" <[email protected]> > 发送日期: 2011年10月14日, 星期五, 下午 5:51 > 主题: Re: [cairo] cairo memory leak > > 2011/10/14 唐博 <[email protected]>: >> I use cairo as this: >> >> cairo_move_to(cr, pPolyline->pPoints[0].x, pPolyline->pPoints[0].y); >> for (s = 1; s < pPolyline->count; ++s) >> { >> cairo_line_to(cr, pPolyline->pPoints[s].x, pPolyline->pPoints[s].y); >> } >> cairo_stroke(cr); >> it will Memory leak. HookLogger said: >>>>>>_tr_malloc <C:\systemapi\src\system\memory\malloc.cpp #7> + 8 - Navidog2X.exe! 4de78a6b() >> __pixman_image_allocate <C:\workspaces\map9.1.5\src\XPixman_20110814\src\pixman-image.c #59> + 10 - Navidog2X.exe! 4df505bc() >> _pixman_image_create_solid_fill <C:\workspaces\map9.1.5\src\XPixman_20110814\src\pixman-solid-fill.c #77> + 5 - Navidog2X.exe! 4df56c94() >> __cairo_format_bits_per_pixel <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-image-surface.c #1076> + 9 - Navidog2X.exe! 4df3a088() >> __cairo_format_bits_per_pixel <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-image-surface.c #1670> + 8 - Navidog2X.exe! 4df3ba28() >> __cairo_format_bits_per_pixel <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-image-surface.c #3515> + 27 - Navidog2X.exe! 4df3f1e0() >> __cairo_format_bits_per_pixel <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-image-surface.c #2327> + 44 - Navidog2X.exe! 4df3cd61() >> __cairo_format_bits_per_pixel <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-image-surface.c #3579> + 32 - Navidog2X.exe! 4df3f396() >> __cairo_format_bits_per_pixel <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-image-surface.c #3680> + 36 - Navidog2X.exe! 4df3f659() >> __cairo_surface_stroke <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-surface.c #2184> + 41 - Navidog2X.exe! 4df471b4() >> __cairo_gstate_stroke <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo-gstate.c #1145> + 96 - Navidog2X.exe! 4df75ffc() >> _cairo_stroke_preserve <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo.c #2416> + 20 - Navidog2X.exe! 4df4181d() >> _cairo_stroke <C:\workspaces\map9.1.5\src\XCairo_20110815\src\cairo.c #2389> + 8 > > You need to compile with -O0 for this backtrace to be useful. > cairo_format_bits_per_pixel hardly a function that spans several > thousands lines of code and pixman_image_create_solid_fill is not > called from within cairo-image-surface.c, so the information you show > above is incorrect. > >> I didn't find some wrong in pixman-image.c and cairo-image-surface.c . Who can tell me the reason. > > My first guess would be a solid image cache. > Are you sure this is a real leak (if you draw and stroke the polygon > inside a loop, does the memory leak get larger?) > > Maarten > >> -- >> cairo mailing list >> [email protected] >> http://lists.cairographics.org/mailman/listinfo/cairo > > > -- cairo mailing list [email protected] http://lists.cairographics.org/mailman/listinfo/cairo