diff options
author | msw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-18 07:02:50 +0000 |
---|---|---|
committer | msw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-18 07:02:50 +0000 |
commit | 3d07730f17bbebb05979c40255d3993b1dbfab00 (patch) | |
tree | d31d40be819e365680dbbf50e48047c2dc9d7453 /ui | |
parent | a15fe317faa082e8feef22cd1416f621ecd101ed (diff) | |
download | chromium_src-3d07730f17bbebb05979c40255d3993b1dbfab00.zip chromium_src-3d07730f17bbebb05979c40255d3993b1dbfab00.tar.gz chromium_src-3d07730f17bbebb05979c40255d3993b1dbfab00.tar.bz2 |
Use setXfermodeMode instead of leaking in a couple places.
Mike Reed noted in another CL: Create returns a new xfermode
setXfermode refs that mode (and will call unref when it dies)
... but we still have a dangling owner (Create), so we'll get a leak.
Using a skia::RefPtr and skia::AdoptRef can fix this.
In these cases, it's much simpler to use setXfermodeMode.
BUG=none
TEST=No regressions painting speech bubbles or progress bars.
R=reed@google.com,sky@chromium.org
Review URL: https://chromiumcodereview.appspot.com/17130003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206911 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui')
-rw-r--r-- | ui/views/controls/progress_bar.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ui/views/controls/progress_bar.cc b/ui/views/controls/progress_bar.cc index 2764351..a8e6b5d 100644 --- a/ui/views/controls/progress_bar.cc +++ b/ui/views/controls/progress_bar.cc @@ -289,7 +289,7 @@ void ProgressBar::OnPaint(gfx::Canvas* canvas) { p, highlight_colors, highlight_points, arraysize(highlight_colors), SkShader::kClamp_TileMode, NULL)); paint.setShader(s.get()); - paint.setXfermode(SkXfermode::Create(SkXfermode::kSrcOver_Mode)); + paint.setXfermodeMode(SkXfermode::kSrcOver_Mode); canvas->DrawRect(gfx::Rect(highlight_left, 0, kHighlightWidth + kBorderWidth, height()), paint); |