Bug 26946 - WebKit doesn't pass of content handling of the image/gif MIME type to plug-ins
Summary: WebKit doesn't pass of content handling of the image/gif MIME type to plug-ins
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: Plug-ins (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-02 21:22 PDT by Simone Manganelli
Modified: 2009-07-02 22:08 PDT (History)
1 user (show)

See Also:


Attachments
Xcode project for a plug-in that registers for the image/gif MIME type (13.92 KB, application/zip)
2009-07-02 21:22 PDT, Simone Manganelli
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Simone Manganelli 2009-07-02 21:22:56 PDT
Created attachment 32216 [details]
Xcode project for a plug-in that registers for the image/gif MIME type

Summary: WebKit's plug-in architecture does not seem to work when registering for certain MIME types, like image/gif, for example.  When registering for these MIME types with a plug-in, content handling for those specific MIME types never seems to be passed off to the correct plug-in.  Even if all other plugins are disabled, Safari still seems to handle these MIME types internally.


Steps to Reproduce:

1.  Download the attachment from this bug report named "clicktoflash+reduction.zip".

2.  Unzip the project, and build it.

3.  Move the built plug-in from the build folder to ~/Library/Internet Plug-ins/ or /Library/Internet Plug-ins/ .

4.  Launch WebKit.

5.  Browse to hulu.com.  You will notice that an ugly green-to-red gradient will display where the Flash content is supposed to be.  This is because the plugin registers for the application/x-shockwave-flash MIME type.  Note that since the gradient is displayed (code for which is in the plug-in), the plug-in is working properly.

6.  Browse to http://jackbauersvcr.ytmnd.com/ .  Note that the animated gif for the flashing 12:00:00 alarm clock plays.  Note that the plug-in registers for the image/gif MIME type.  (This specific animated gif is located here: http://content.ytmnd.com/content/a/9/e/a9e801d38144c244c7c3ff479cc68eec.gif

7.  Quit WebKit.

8.  Remove all plugins from ~/Library/Internet Plug-ins/ and /Library/Internet Plug-ins/, *including* the "QuickTime.plugin" and "QuickTime.webplugin" plugins, but keep the plug-in that you built from the attachment installed.

9.  Launch WebKit.  Again browse to http://jackbauersvcr.ytmnd.com/ .  Again note that the animated gif still plays.


Expected Results: I expect plug-ins which register for the image/gif MIME type to have content display of GIFs passed off to the plug-in.


Actual Results: WebKit still handles the content display of the image/gif MIME type even when plug-ins register for it and even when all plug-ins are disabled.


Regression: Unknown.
Comment 1 Simone Manganelli 2009-07-02 21:38:40 PDT
Registering for the image/png MIME type (which the QuickTime plugin actually declares), has a similar effect: WebKit seems to handle the image internally rather than through the QuickTime plugin.
Comment 2 Mark Rowe (bdash) 2009-07-02 22:08:17 PDT
Image elements are not plug-ins.