Index: remoting/base/decoder_vp8.cc |
diff --git a/remoting/base/decoder_vp8.cc b/remoting/base/decoder_vp8.cc |
index 88ea3b6afa0f733495108904053d5474fbf16936..2c0677b053e42322f586ee73870d8b21b33a2051 100644 |
--- a/remoting/base/decoder_vp8.cc |
+++ b/remoting/base/decoder_vp8.cc |
@@ -121,6 +121,14 @@ void DecoderVp8::RenderFrame(const SkISize& view_size, |
SkRegion* output_region) { |
SkIRect source_clip = SkIRect::MakeWH(last_image_->d_w, last_image_->d_h); |
+ // ScaleYUVToRGB32WithRect doesn't support up-scaling, and our web-app never |
+ // intentionally up-scales, so if we see up-scaling (e.g. during host resize |
+ // or if the user applies page zoom) just don't render anything. |
+ // TODO(wez): Remove this hack when ScaleYUVToRGB32WithRect can up-scale. |
+ if (source_clip.width() < view_size.width() || |
+ source_clip.height() < view_size.height()) |
+ return; |
alexeypa (please no reviews)
2012/03/02 19:59:04
I guess we should make the same check in DecoderRo
Sergey Ulanov
2012/03/02 20:03:27
Need {} around this line (multi-line condition)
Wez
2012/03/02 22:15:31
Done.
Wez
2012/03/02 22:15:31
DecoderRowBased currently doesn't support scaling
|
+ |
for (SkRegion::Iterator i(updated_region_); !i.done(); i.next()) { |
// Determine the scaled area affected by this rectangle changing. |
SkIRect rect = i.rect(); |