diff options
author | Simon Farnsworth <simon.farnsworth@onelan.co.uk> | 2007-07-12 11:28:43 +0100 |
---|---|---|
committer | Simon Farnsworth <simon.farnsworth@onelan.co.uk> | 2007-07-12 11:28:43 +0100 |
commit | 198fa979f89ba74743a301816d38b46a73770856 (patch) | |
tree | 69d6b6c654a4e84ad1af08bc9a1ed343e7313d81 /po | |
parent | 33d32c6238d0d5d9ae00a2fee6bba2c987ff0f21 (diff) | |
download | xine-lib-198fa979f89ba74743a301816d38b46a73770856.tar.gz xine-lib-198fa979f89ba74743a301816d38b46a73770856.tar.bz2 |
Remove realloc from osd.c to prevent memory leak due to fragmentation
show() in osd.c uses realloc in an effort to minimise the amount of
memory actually used for rle objects. In practice, this caused xine to
fragment memory, and gradually use more and more RAM (measured over a
period of 24 to 72 hours).
Change osd.c to allocate the maximum amount of memory it could need;
because it touches this memory in a linear fashion, lazy page allocation
will ensure that most of the memory used is needed. Further, because
this makes the per-drawing allocations the same size, it avoids virtual
address space fragmentation.
Diffstat (limited to 'po')
0 files changed, 0 insertions, 0 deletions