| Index: ui/surface/transport_dib.cc
|
| ===================================================================
|
| --- ui/surface/transport_dib.cc (revision 0)
|
| +++ ui/surface/transport_dib.cc (revision 0)
|
| @@ -0,0 +1,21 @@
|
| +// Copyright (c) 2013 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "ui/surface/transport_dib.h"
|
| +
|
| +#include "skia/ext/platform_canvas.h"
|
| +
|
| +// static
|
| +bool TransportDIB::VerifyCanvasSize(int w, int h) {
|
| + static const size_t kMaxSize = static_cast<size_t>(INT_MAX);
|
| + const size_t one_stride = skia::PlatformCanvasStrideForWidth(1);
|
| + const size_t stride = skia::PlatformCanvasStrideForWidth(w);
|
| + if (w <= 0 || h <= 0 || static_cast<size_t>(w) > (kMaxSize / one_stride) ||
|
| + static_cast<size_t>(h) > (kMaxSize / stride)) {
|
| + return false;
|
| + }
|
| +
|
| + return (stride * h) <= size_;
|
| +}
|
| +
|
|
|
| Property changes on: ui\surface\transport_dib.cc
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|