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.
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.
This id to old and I do not see the bug in recent valgrind logs so I close the bug.