[crossfire] Valgrind results
Alex Schultz
alex_sch at telus.net
Sat Mar 26 13:10:56 CST 2005
Andreas Kirschbaum wrote:
>
I'm currently trying to fix this problem. There are at least two bugs as
>
far as I can see:
>
>
- The server keeps sending the image information for face 0 over and
>
over.
>
>
This seems incorrect to me (both sending it over and over, and
>
sending it at all), because the client already preallocates the face
>
0 as a black face.
>
>
- The client (that is, all clients) cannot handle "updated" face
>
information: the function create_and_rescale_image_from_data() does
>
not free the previous contents of pixmaps[] before writing the new
>
value
>
>
Ah... so most of this leakage likely is the combination of both bugs:
the server keeps sending face 0 over and over, that counts to the client
as a face update, and each time face 0 is sent, the old face 0 (which is
exactly the same anyways) isn't freed properly. Is that correct?
I also seem to be seeing the X memory usage increasing alot with CF,
which appears to be upstream leaks triggered by cfclient. As I
understand, the leaks in X itself aren't being tracked by valgrind as
that memory isn't owned by cfclient, and running all of X in valgrind
would be impractically slow. So exactly why cf is causing X itself to
leak may be more difficult to track down.
Thanks,
Alex Schultz (aka Rednaxela)
More information about the crossfire
mailing list