I'd like to move a set of xpcom objects around in calendar. While nsITransferable seems to support this using a nsISupportsInterfacePointer, nsIClipboard fails to roundtrip this when doing clipboard.setData() then clipboard.getData(). The solution seems quite simple to me: when iterating through the flavors wanted in nsIClipboard::getData() and the data could not be retrieved from the system clipboard, try to get the data (in the current flavor) from the nsClipboard's own transferable. If this is there, return it. Otherwise check the next flavor. Possibly we might want to add a marker flavor to the system clipboard to make sure the internal transferable isn't out of sync. I would of course like to see this for 1.9.1 since a calendar blocker depends on it.
Created attachment 359540 [details] Testcase - v1 This testcase exhibits the problem. You'll need signed.applets.codebase_principal_support (Sorry!) to allow access to the clipboard.
You need to log in before you can comment on or make changes to this bug.