← Back to team overview

compiz team mailing list archive

[Bug 861268] Re: text corruption in terminals (xterm, urxvt) and emacs

 

Hi,

In our team, we've been doing some testing through the plugin that shows
compiz redraws.  The main result that our testing got was that compiz
*is redrawing* the window when the bug occurs.  This means that compiz
is getting the "redraw" signal correctly, but when it redraws, the
buffer still contains the old or partially old content.  Doing any
change in the environment but not the content, like moving the window
affected, triggers another redraw and this time with the right content.

We also found that unaffected programs, like terminator or konsole, do
more redraws.  So it's possible that the first redraw is corrupted (it
flashes way too fast to tell) but then the second one is not corrupted.

Current working hypothesis:
Certain programs (gnome-terminal, gvim, xterm) when being used in a compositing environment send the "please redraw" signal before they have finished drawing to their buffer and so the compositing window manager draws a partially/totally corrupted screen.

We've found that we can reproduce this bug with 1 or 2 monitors, running
under several different environments (unity, gnome, cinnamon), in our
case always with nVidia cards.

When using Unity, the current workaround is to enable "Force full screen
redraws (buffer swap) on repaint" through ccsm.   When using cinnamon
we've tried the workaround listed in the previous post (CLUTTER_PAINT
=disable-clipped-redraws:disable-culling <command>) helps but doesn't
solve it 100%.

-- 
You received this bug notification because you are a member of compiz
packagers, which is subscribed to compiz in Ubuntu.
https://bugs.launchpad.net/bugs/861268

Title:
  text corruption in terminals (xterm, urxvt) and emacs

To manage notifications about this bug go to:
https://bugs.launchpad.net/compiz/+bug/861268/+subscriptions