Skip to content
  • Olivier Fourdan's avatar
    compositor: Do not clear timeout on retry · cb06a039
    Olivier Fourdan authored
    
    
    When using vblank (either GLX or Xpresent), a previous paint request may
    still be pending while new damage notifications are triggered by clients
    updates.
    
    If that occurs, xfwm4 does not cancel the existing timeout previously
    created timeout (so it will retry automatically) but clears the timeout
    id.
    
    As a result, if new damage occurs, a new timeout would be created while
    an existing one is still running.
    
    When using Xpresent while the screen is turned off, no Xpresent event
    notification occur, which increases the risk of the above occuring.
    
    Clear the timeout id only when the repaint succeeded, so we don't pile
    up multiple retries.
    
    Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
    See-also: #502
    cb06a039