1. 12 Nov, 2011 5 commits
    • Christian Persch's avatar
      Alwys initialise the matrix · abda93ca
      Christian Persch authored
      This fixes a regression from commit f93a2acc:
      
      ==20076== Conditional jump or move depends on uninitialised value(s)
      ==20076==    at 0x402CFF8: bcmp (mc_replace_strmem.c:692)
      ==20076==    by 0x429DF0B: _cairo_gstate_set_matrix (cairo-gstate.c:722)
      ==20076==    by 0x428FC52: cairo_set_matrix (cairo.c:1250)
      ==20076==    by 0x405A11C: _set_rsvg_affine (rsvg-cairo-draw.c:367)
      ==20076==    by 0x405B941: rsvg_cairo_render_image (rsvg-cairo-draw.c:577)
      ==20076==    by 0x4058C76: rsvg_render_image (rsvg-base.c:1964)
      ==20076==    by 0x4039FE8: rsvg_node_image_draw (rsvg-image.c:310)
      ==20076==    by 0x404FC13: rsvg_node_draw (rsvg-structure.c:69)
      ==20076==    by 0x4050126: _rsvg_node_draw_children (rsvg-structure.c:87)
      ==20076==  Uninitialised value was created by a stack allocation
      ==20076==    at 0x405A236: _set_source_rsvg_pattern (rsvg-cairo-draw.c:190)
      abda93ca
    • Christian Persch's avatar
      Plug a mem leak · 54673644
      Christian Persch authored
      Don't leak the list entries of RsvgDefs:to-resolve when parsing the
      file fails.
      
      ==17296== 13,627 (8 direct, 13,619 indirect) bytes in 1 blocks are definitely lost in loss record 210 of 211
      ==17296==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
      ==17296==    by 0x4565BDA: standard_malloc (gmem.c:85)
      ==17296==    by 0x4565F80: g_malloc (gmem.c:159)
      ==17296==    by 0x4579C8D: g_slice_alloc (gslice.c:822)
      ==17296==    by 0x457AD5A: g_slist_prepend (gslist.c:267)
      ==17296==    by 0x403952F: rsvg_defs_add_resolver (rsvg-defs.c:183)
      ==17296==    by 0x404F8CC: rsvg_node_use_set_atts (rsvg-structure.c:434)
      ==17296==    by 0x4057E7C: rsvg_node_set_atts (rsvg-base.c:1939)
      ==17296==    by 0x4057F08: rsvg_standard_element_start (rsvg-base.c:265)
      ==17296==    by 0x40588F8: rsvg_start_element (rsvg-base.c:659)
      54673644
    • Christian Persch's avatar
      Bump libxml2 dependency to 2.7.0 · 9e0d425c
      Christian Persch authored
      ... and drop compat code for older libxml2.
      9e0d425c
    • Christian Persch's avatar
      Plug a mem leak · 159331ba
      Christian Persch authored
      The entity hashtable was leaking the keys.
      
      ==10167== 6 bytes in 1 blocks are definitely lost in loss record 19 of 155
      ==10167==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
      ==10167==    by 0x4566BDA: standard_malloc (gmem.c:85)
      ==10167==    by 0x4566F80: g_malloc (gmem.c:159)
      ==10167==    by 0x457C89A: g_strdup (gstrfuncs.c:351)
      ==10167==    by 0x405774D: rsvg_entity_decl (rsvg-base.c:843)
      159331ba
    • Christian Persch's avatar
      Plug a mem leak · d0d27dfd
      Christian Persch authored
      ==10026== 48 (8 direct, 40 indirect) bytes in 1 blocks are definitely lost in loss record 97 of 154
      ==10026==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
      ==10026==    by 0x4566BDA: standard_malloc (gmem.c:85)
      ==10026==    by 0x4566F80: g_malloc (gmem.c:159)
      ==10026==    by 0x456B4E3: parse_arg (goption.c:1242)
      ==10026==    by 0x456CDD6: g_option_context_parse (goption.c:1578)
      ==10026==    by 0x8049558: main (rsvg-convert.c:189)
      d0d27dfd
  2. 11 Nov, 2011 6 commits
    • Christian Persch's avatar
      Plug a mem leak · f0cdc794
      Christian Persch authored
      ==7436== 31 (8 direct, 23 indirect) bytes in 1 blocks are definitely lost in loss record 243 of 355
      ==7436==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
      ==7436==    by 0x4566BDA: standard_malloc (gmem.c:85)
      ==7436==    by 0x4566F80: g_malloc (gmem.c:159)
      ==7436==    by 0x456B4E3: parse_arg (goption.c:1242)
      ==7436==    by 0x456CDD6: g_option_context_parse (goption.c:1578)
      ==7436==    by 0x8049558: main (rsvg-convert.c:189)
      f0cdc794
    • Christian Persch's avatar
      Plug a mem leak · a8f1e457
      Christian Persch authored
      ... and don't call g_strv_length() just to find out if length is == 2 !
      
      ==5735== 4 bytes in 1 blocks are definitely lost in loss record 18 of 356
      ==5735==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
      ==5735==    by 0x4566BDA: standard_malloc (gmem.c:85)
      ==5735==    by 0x4566F80: g_malloc (gmem.c:159)
      ==5735==    by 0x4567282: g_malloc_n (gmem.c:361)
      ==5735==    by 0x457DFCC: g_strsplit (gstrfuncs.c:2249)
      ==5735==    by 0x4053934: rsvg_parse_style (rsvg-styles.c:919)
      a8f1e457
    • Christian Persch's avatar
      Plug a mem leak · 657e84cd
      Christian Persch authored
      657e84cd
    • Christian Persch's avatar
      Plug a mem leak · 0171a4e1
      Christian Persch authored
      Don't leak the CRDocHandler.
      
      ==988== 104 (92 direct, 12 indirect) bytes in 1 blocks are definitely lost in loss record 4,805 of 5,382
      ==988==    at 0x402AD89: malloc (vg_replace_malloc.c:236)
      ==988==    by 0x4B40BDA: standard_malloc (gmem.c:85)
      ==988==    by 0x4053A15: rsvg_parse_cssbuffer (rsvg-styles.c:1128)
      ==988==    by 0x4056644: rsvg_style_handler_free (rsvg-base.c:90)
      ==988==    by 0x4056BB9: rsvg_end_element (rsvg-base.c:681)
      ==988==    by 0x49C28C1: xmlParseEndTag1 (parser.c:8356)
      ==988==    by 0x49C9DEB: xmlParseTryOrFinish (parser.c:11154)
      ==988==    by 0x49CAB24: xmlParseChunk (parser.c:11739)
      ==988==    by 0x405A238: rsvg_handle_write (rsvg-base.c:1172)
      0171a4e1
    • Christian Persch's avatar
      Use -Bsymbolic-functions when available · 4736fcc1
      Christian Persch authored
      4736fcc1
    • Christian Persch's avatar
      Avoid unnecessary strdups · 6e27a58a
      Christian Persch authored
      In all cases except one, the property bag does not need to store copies
      of the attributes and values. So make the property bag store them by
      reference, and add rsvg_property_bag_dup for the one case where we do
      need to make a bag that owns the attributes and values.
      6e27a58a
  3. 10 Nov, 2011 3 commits
  4. 09 Nov, 2011 5 commits
  5. 07 Nov, 2011 21 commits