Currently there is quite some thing that could be shared between PluginPackageWin.cpp, PluginPackageQt.cpp and PluginPackageGtk.cpp. Recently the duplication has created the usual problem that one site was updated, the two others not. Attempt to improve the situation.
Created attachment 30627 [details] Move the big m_browserfuncs assignment to PluginPackage.cpp Move the big set of assignment statements from PluginPackageWin.cpp to PluginPackage.cpp and remove them from PluginPackageQt.cpp and PluginPackageGtk.cpp.
Created attachment 30628 [details] Move hash and equal to PluginPackage The hash, equal and compare version can be shared between Gtk and Qt. Move them into PluginPackage.cpp and guard the implementation with a #if USE() as the windows version is specialized and will not be happy with the simple implementation.
Created attachment 30629 [details] Cleanup the hash implementation Small cleanups, less hardcoded magic numbers (two in this case) and the size of UChar.
Comment on attachment 30627 [details] Move the big m_browserfuncs assignment to PluginPackage.cpp r=me
Comment on attachment 30628 [details] Move hash and equal to PluginPackage The ifdef should be an ENABLE not a USE, since it's about optional code inside WebKit (ENABLE), not an optional external dependency (USE). Please change that when landing. Otherwise r=me
Comment on attachment 30629 [details] Cleanup the hash implementation r=me
Created attachment 30640 [details] Update PluginPackageMac.cpp too I forgot to update PluginPackageMac.cpp which is used by Qt.
Comment on attachment 30640 [details] Update PluginPackageMac.cpp too Nice!!
Last fix landed in r44129