Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Issue 6260040: Reapply and fix r73019. BalloonViewImpl has a different implemementation on (Closed)

Created:
9 years, 10 months ago by Elliot Glaysher
Modified:
9 years, 7 months ago
CC:
chromium-reviews
Visibility:
Public.

Description

Reapply and fix r73019. BalloonViewImpl has a different implemementation on linux_gtk, linux_views, and chromeos, but everyone uses the same class name. sizeof(linux_views BVI) > sizeof(linux_gtk BVI). Previously, the GTK version allocated on object of linux_views BVI, and just had some uninitialized memory at the end. Switching these around by changing the includes, the linux_views implementation wrote past the sizeof the linux_gtk BVI. Fix by #ifdefing on TOOLKIT. Fix style problems in the Balloon implementation on linux in preparation for turning on chrome-style bot. - Rename file that had all BalloonCollectionImpl code from balloon_collection.cc to balloon_collection_impl.cc so I could add a real balloon_collection.cc for deinlining. - GTK implementation files shouldn't depend on views/ code. BUG=none TEST=compiles Original Review URL: http://codereview.chromium.org/6400006 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=73310

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+400 lines, -380 lines) Patch
M chrome/browser/notifications/balloon_collection.h View 2 chunks +3 lines, -5 lines 0 comments Download
M chrome/browser/notifications/balloon_collection.cc View 1 chunk +5 lines, -371 lines 0 comments Download
M chrome/browser/notifications/balloon_collection_impl.h View 1 chunk +1 line, -1 line 0 comments Download
A chrome/browser/notifications/balloon_collection_impl.cc View 1 chunk +382 lines, -0 lines 0 comments Download
M chrome/browser/notifications/balloon_collection_linux.cc View 1 chunk +6 lines, -1 line 0 comments Download
M chrome/browser/ui/gtk/notifications/balloon_view_gtk.h View 1 chunk +1 line, -1 line 0 comments Download
M chrome/chrome_browser.gypi View 2 chunks +2 lines, -1 line 0 comments Download

Messages

Total messages: 3 (0 generated)
Elliot Glaysher
Nico: Review Mike: FYI why things broke on Fri.
9 years, 10 months ago (2011-01-31 20:57:15 UTC) #1
John Gregg
On 2011/01/31 20:57:15, Elliot Glaysher wrote: > Nico: Review > Mike: FYI why things broke ...
9 years, 10 months ago (2011-01-31 20:58:58 UTC) #2
Nico
9 years, 10 months ago (2011-01-31 21:27:45 UTC) #3
LG

Nasty!

I guess some form of ODR checker would've caught this?

On Mon, Jan 31, 2011 at 12:57 PM,  <erg@chromium.org> wrote:
> Reviewers: Nico, Mike Belshe, John Gregg,
>
> Message:
> Nico: Review
> Mike: FYI why things broke on Fri.
>
> Description:
> Reapply and fix r73019. BalloonViewImpl has a different implemementation on
> linux_gtk, linux_views, and chromeos, but everyone uses the same class
> name. sizeof(linux_views BVI) > sizeof(linux_gtk BVI). Previously, the GTK
> version allocated on object of linux_views BVI, and just had some
> uninitialized
> memory at the end. Switching these around by changing the includes, the
> linux_views implementation wrote past the sizeof the linux_gtk BVI. Fix by
> #ifdefing on TOOLKIT.
>
> Fix style problems in the Balloon implementation on linux in preparation for
> turning on chrome-style bot.
>
> - Rename file that had all BalloonCollectionImpl code from
>  balloon_collection.cc to balloon_collection_impl.cc so I could add a real
>  balloon_collection.cc for deinlining.
> - GTK implementation files shouldn't depend on views/ code.
>
> BUG=none
> TEST=compiles
> Original Review URL: http://codereview.chromium.org/6400006
>
> Please review this at http://codereview.chromium.org/6260040/
>
> SVN Base: svn://svn.chromium.org/chrome/trunk/src
>
> Affected files:
>  M chrome/browser/notifications/balloon_collection.h
>  M chrome/browser/notifications/balloon_collection.cc
>  M chrome/browser/notifications/balloon_collection_impl.h
>  A chrome/browser/notifications/balloon_collection_impl.cc
>  M chrome/browser/notifications/balloon_collection_linux.cc
>  M chrome/browser/ui/gtk/notifications/balloon_view_gtk.h
>  M chrome/chrome_browser.gypi
>
>
>

Powered by Google App Engine
This is Rietveld 408576698