[Webkit-unassigned] [Bug 49749] [Qt] plugins/refcount-leaks.html fails, wrong ref count of npobject

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 11 11:53:30 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=49749





--- Comment #3 from Robert Hogan <robert at webkit.org>  2011-05-11 11:53:30 PST ---
A couple of things:

1. This test passes on a debug build but fails on a release build. Is there any general reason why GC is more aggressive in debug?

2. The failure starts here:

    // Test that the object refcount returns to normal after JS references
    // are released.
    var testObj = plug.testObject;
    var refOrig = testObj.refCount;
    var o1 = plug.testObject;
    var o2 = plug.testObject;
    var o3 = plug.testObject;
    var refAfterGet = testObj.refCount;
    o1 = o2 = o3 = null;
    doGC(); <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    var refAfterGetGC = testObj.refCount;

My printf output on a debug build shows the three null'd references getting collected by the doGC():

Plugin Called: refCount
_NPN_ReleaseVariantValue: 0xbfc4c278 3
GCController::garbageCollectNow()
~CInstance() releasing object
entered _NPN_ReleaseObject
_NPN_ReleaseObject obj->referenceCount: 0x8375628 5
_NPN_ReleaseObject obj->referenceCount: 0x8375628 4
----------------------------------------------------
~CInstance() releasing object
entered _NPN_ReleaseObject
_NPN_ReleaseObject obj->referenceCount: 0x8375628 4
_NPN_ReleaseObject obj->referenceCount: 0x8375628 3
----------------------------------------------------
~CInstance() releasing object
entered _NPN_ReleaseObject
_NPN_ReleaseObject obj->referenceCount: 0x8375628 3
_NPN_ReleaseObject obj->referenceCount: 0x8375628 2
----------------------------------------------------

However on the release build only two are collected:

Plugin Called: refCount
_NPN_ReleaseVariantValue: 0xbf89221c 3
GCController::garbageCollectNow()
~CInstance() releasing object
entered _NPN_ReleaseObject
_NPN_ReleaseObject obj->referenceCount: 0x85687d0 5
_NPN_ReleaseObject obj->referenceCount: 0x85687d0 4
----------------------------------------------------
~CInstance() releasing object
entered _NPN_ReleaseObject
_NPN_ReleaseObject obj->referenceCount: 0x85687d0 4
_NPN_ReleaseObject obj->referenceCount: 0x85687d0 3
----------------------------------------------------
GCController::garbageCollectNow()
Plugin Called: refCount

This failure cascades all the way through.

3. I've failed to find anything suspicious that is Qt-specific so far.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list