<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Memory leak in cairo_show_text"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=105466#c8">Comment # 8</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Memory leak in cairo_show_text"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=105466">bug 105466</a>
              from <span class="vcard"><a class="email" href="mailto:philip.chimento@gmail.com" title="Philip Chimento <philip.chimento@gmail.com>"> <span class="fn">Philip Chimento</span></a>
</span></b>
        <pre>(In reply to Uli Schlachter from <a href="show_bug.cgi?id=105466#c7">comment #7</a>)
<span class="quote">> Call FcFini() to shutdown fontconfig.</span >

Would you consider a patch to call this in cairo_debug_reset_static_data()?
It's probably fine as it is, but on the other hand it's a
not-easily-discoverable burden to callers if they have to link directly to all
of Cairo's dependent libraries to call their respective deinitialization
functions. (I can't think of a use case when you _wouldn't_ want to deinit
fontconfig while deiniting Cairo, but maybe there is one?)

<span class="quote">> And if you start seeing a 256k memory leak from pixman_glyph_cache_create(),
> update to a cairo version that includes 1ed124ace20194.

> With the above changes, here is my valgrind output for the example from
> <a href="show_bug.cgi?id=105466#c5">comment #5</a>:

> [snip]</span >
>
<span class="quote">> (No, pixman does not provide a function to destroy its global_implementation
> variable that is allocated by _pixman_choose_implementation(); no, this is
> not a real memory leak; no, this is not cairo's "fault")</span >

Yes, I know the difference between a memory leak and static data that is held
until program shutdown. I am not accusing anybody or saying that anything is
anybody's fault.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>