Annotate the out param with [shared] and add a comment about it. b=434429 r+sr=bzbarsky

This commit is contained in:
Mats Palmgren 2008-07-08 02:23:04 +02:00
parent ca25fa69ba
commit 0b959cc689
3 changed files with 9 additions and 5 deletions

View File

@ -432,7 +432,7 @@ public:
{ {
if (mInstance && mPluginHost) { if (mInstance && mPluginHost) {
nsCOMPtr<nsPIPluginHost> piPluginHost = do_QueryInterface(mPluginHost); nsCOMPtr<nsPIPluginHost> piPluginHost = do_QueryInterface(mPluginHost);
char* name = NULL; const char* name = NULL;
if (NS_SUCCEEDED(piPluginHost->GetPluginName(mInstance, &name)) && if (NS_SUCCEEDED(piPluginHost->GetPluginName(mInstance, &name)) &&
name) name)
return name; return name;

View File

@ -46,7 +46,7 @@ interface nsIPluginInstanceOwner;
[ptr] native nsPluginNativeWindowPtr(nsPluginNativeWindow); [ptr] native nsPluginNativeWindowPtr(nsPluginNativeWindow);
[uuid(75d8fcd7-06d1-4767-9022-7f8dacf48a68)] [uuid(673811fb-83d6-4b8f-b1a9-bb3a9033f256)]
interface nsPIPluginHost : nsISupports interface nsPIPluginHost : nsISupports
{ {
/** /**
@ -106,6 +106,10 @@ interface nsPIPluginHost : nsISupports
/** /**
* Get the plugin name for the plugin instance. * Get the plugin name for the plugin instance.
* @param aInstance the plugin instance object
* @param aPluginName returns a pointer to a shared readonly string value,
* it's only valid for the lifetime of the plugin instance - you must
* copy the string value if you need it longer than that.
*/ */
[noscript] void getPluginName(in nsIPluginInstance aInstance, out string aPluginName); [noscript] void getPluginName(in nsIPluginInstance aInstance, [shared] out string aPluginName);
}; };

View File

@ -6930,9 +6930,9 @@ nsPluginHostImpl::InstantiateDummyJavaPlugin(nsIPluginInstanceOwner *aOwner)
NS_IMETHODIMP NS_IMETHODIMP
nsPluginHostImpl::GetPluginName(nsIPluginInstance *aPluginInstance, nsPluginHostImpl::GetPluginName(nsIPluginInstance *aPluginInstance,
char** aPluginName) const char** aPluginName)
{ {
*aPluginName = (char*)GetPluginName(aPluginInstance); *aPluginName = GetPluginName(aPluginInstance);
return NS_OK; return NS_OK;
} }