I traced to par.rows().empty() and I am wondering if par is unique across buffer views. Anyway, I am working on it right now.
The problem is found: par.rows() is initialized for new window (new->window) and is re-initialized for buffer switch and windows resize etc. Now, 1. open a doc, scroll around, rows() is OK. 2. new->window, rows() is cleared 3. switch buffer, the original window *think* that the rows() are unchanged. 4. Usual update() may not work for 3 since update() works for the text cursor which is now unseen. I am try to get a patch when I get a chance. As Abdel has said, the correct solution should be moving rows() out of buffer so each bufferview has its own rows() for the same buffer. Abdel, is it possible to do this before 1.5.0? Bo
