exa: fix prepare access for fullsize per-crtc pixmap

The has_fullsize_bo() check in prepare access allows returning a per-crtc
bo directly for reading when the per-crtc dimensions (and pitch) exactly
match the root pixmap's.  This check was correct when it was added by
commit [0], but incorrectly inverted by patch [1].  Oops.

[0] commit 62fa35aae81d15f89e28393950dff1fd19f99b5e
Author: Daniel Kurtz <djkurtz@chromium.org>
exa: only switch to blit mode when preparing write access

[1] commit 946c2ebaee2653c8a72bb2e558c29e0bee5fa2fb
Author: Daniel Kurtz <djkurtz@chromium.org>
exa: Update logic for choosing root pixmap's backing bo in prepare access

Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>

BUG=chromium:365854
TEST=On peach_pi:
   Connect external display to peach_pi
   Enable extended desktop
   login
   alt-fullscreen to swap windows
    => No X crash
TEST=DISPLAY=:0 for i in {1..20}; do xdotool key alt+F4; sleep 0.5; done
TEST=chrome://settings/display
   select External Monitor
   select 640x480
   export DISPLAY=:0
   for i in {1..20}; do xdotool key Down; sleep 4; \
                        xdotool key Up; sleep 4; done
 => No X crash (see crosbug.com/p/27725#c19)
TEST=GTP hangout w/ screenshare w/out external monitor
TEST=GTP hangout w/ screenshare with 1920x1080 external monitor

Change-Id: I955353ea9c8e6b94e25c8fb854baa1209b07817c
Reviewed-on: https://chromium-review.googlesource.com/197517
Reviewed-by: Dominik Behr <dbehr@chromium.org>
Commit-Queue: Daniel Kurtz <djkurtz@chromium.org>
Tested-by: Daniel Kurtz <djkurtz@chromium.org>
1 file changed