Bug 24131 - Unfork RefCounting fix-ups
Summary: Unfork RefCounting fix-ups
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Dimitri Glazkov (Google)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-02-24 12:34 PST by Dimitri Glazkov (Google)
Modified: 2009-02-24 16:20 PST (History)
0 users

See Also:


Attachments
Fix-up COM/RefCounted dichotomy in Chromium port, v1. (1.58 KB, patch)
2009-02-24 12:36 PST, Dimitri Glazkov (Google)
fishd: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dimitri Glazkov (Google) 2009-02-24 12:34:36 PST
It is with great dismay that I introduce this change and beg forgiveness. We will fix this right. But not today.
Comment 1 Dimitri Glazkov (Google) 2009-02-24 12:36:54 PST
Created attachment 27925 [details]
Fix-up COM/RefCounted dichotomy in Chromium port, v1.

 WebCore/ChangeLog                                  |   11 +++++++++++
 WebCore/page/chromium/AccessibilityObjectWrapper.h |    9 ++++++++-
 2 files changed, 19 insertions(+), 1 deletions(-)
Comment 2 Eric Seidel (no email) 2009-02-24 16:03:37 PST
Comment on attachment 27925 [details]
Fix-up COM/RefCounted dichotomy in Chromium port, v1.

Sigh.
Comment 3 Darin Fisher (:fishd, Google) 2009-02-24 16:08:55 PST
Comment on attachment 27925 [details]
Fix-up COM/RefCounted dichotomy in Chromium port, v1.

>diff --git a/WebCore/page/chromium/AccessibilityObjectWrapper.h b/WebCore/page/chromium/AccessibilityObjectWrapper.h
>index 9920e4d..af32567 100644
>--- a/WebCore/page/chromium/AccessibilityObjectWrapper.h
>+++ b/WebCore/page/chromium/AccessibilityObjectWrapper.h
>@@ -39,7 +39,14 @@ namespace WebCore {
> 
>     protected:
>         AccessibilityObjectWrapper(AccessibilityObject* obj)
>-            : RefCounted<AccessibilityObjectWrapper>(0), m_object(obj) { }
>+            : m_object(obj)
>+        {
>+          // Default refCount is 1, but the webkit-win version of this is not
>+          // RefCounted, so this is not properly created using ::create.
>+          // FIXME: Once AccessibleBase no longer implements COM interfaces,
>+          // make it not RefCounted.

This comment is a bit confusing.  The PLATFORM(WIN)
AccessibilityObjectWrapper class does inherit from
IUnknown, so it does do initialized-to-zero reference
counting as well.

Perhaps the comment can be:

// FIXME: Remove this once our immediate subclass no longer uses COM.


Otherwise, looks good.

-Darin
Comment 4 Darin Fisher (:fishd, Google) 2009-02-24 16:09:47 PST
Comment on attachment 27925 [details]
Fix-up COM/RefCounted dichotomy in Chromium port, v1.

(sorry, didn't mean to remove the r+ from eric)
Comment 5 Dimitri Glazkov (Google) 2009-02-24 16:20:25 PST
Landed as http://trac.webkit.org/changeset/41197.