Comment 13 for bug 24630

Revision history for this message
Bartek (tschew) wrote :

Dimitrios,

The bug is still present: the allocation method (which is responsible for this bug) has not changed. Pages are loaded into memory as one big image which is then displayed. Once there's no memory left, the operating system terminates the process as it should.

The only way to fix this is to implement a tile loader in evince and a proximity loading algorithm (tile the page up, load tiles adjacent to the ones currently on display, load tiles that are about to come into view as the document is scrolled).

Also, the upstream bug you marked as irrelevant is relevant because the 400% limit and the crashing due to insufficient memory are related. (as is explained in the comments) The artificial limit has been put there to prevent these crashes in most use cases. (but it's obviously a hack, and not a good one).

Cheers,
-Bartek