Bug 20522 - Memory leak in WebCore::PluginPackage class
Summary: Memory leak in WebCore::PluginPackage class
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Plug-ins (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-08-26 06:01 PDT by Balazs Kelemen
Modified: 2010-10-02 07:12 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Balazs Kelemen 2008-08-26 06:01:14 PDT
I found a leak with valgrind when running QtLauncher when loading pages that require plugins.
The m_module member of WebCore::PluginPackage class is not freed.
I took a look at the code and realized that this member must be freed with
a delay through the freeLibrarySoon method that is called by the destructor.
I debugged QtLauncher and discovered that this member is not freed anyway.
The destructor runs many times but the unloadModule function that
should free the member had never been reached. I tested it though loading
pages like youtube and "http://szotar.sztaki.hu/index.hu.jhtml" in
QtLauncher when it was run under gdb (these pages require flash, mplayer and
java plugins). Then I load simple html pages and local files but the
member had been still unfreed. I use the Qt port of Webkit under linux.
Comment 1 Simon Hausmann 2009-03-04 02:54:46 PST
I believe you that for some reason m_module isn't freed. The leak shouldn't be critical though given the implict sharing in the underlying dlopen() as well as inside QLibrary using QLibraryPrivate. It's still a bug though of course.
Comment 2 Balazs Kelemen 2010-10-02 07:12:44 PDT
This id to old and I do not see the bug in recent valgrind logs so I close the bug.