Drop timed lock inside post-processing
This introduced nasty usability regression - any failure to take the
lock during post-processing results in a "freeze" so to speak. Hence
indicate the failure due to magical -1 post-processing return code and
schedule re-display if seen from the OCaml side, meaning the display
and post-processing will be triggered on any future event (most likely
the notification from the rendering/loading side that will likely
release the lock and allow forward progress)
Things work fine with original offender (visualFAQ.pdf -
http://tug.ctan.org/info/visualFAQ/visualFAQ.pdf) as does scrolling
around (mainly horizontally) in sufficiently large and zoomed in
image, such as:
https://upload.wikimedia.org/wikipedia/commons/c/c4/Vasily_Surikov_-_%D0%91%D0%BE%D1%8F%D1%80%D1%8B%D0%BD%D1%8F_%D0%9C%D0%BE%D1%80%D0%BE%D0%B7%D0%BE%D0%B2%D0%B0_-_Google_Art_Project.jpg)