+ if( fSameAsLoad && (S_FALSE == IsDirty()) )
+ return S_OK;
+
+ LPSTREAM pStm = NULL;
+ HRESULT result = pStg->CreateStream(L"VideoLAN ActiveX Plugin Data",
+ STGM_CREATE|STGM_READWRITE|STGM_SHARE_EXCLUSIVE, 0, 0, &pStm);
+
+ if( FAILED(result) )
+ return result;
+
+ LPPERSISTSTREAMINIT pPersistStreamInit;
+ if( SUCCEEDED(QueryInterface(IID_IPersistStreamInit, (void **)&pPersistStreamInit)) )
+ {
+ result = pPersistStreamInit->Save(pStm, fSameAsLoad);
+ pPersistStreamInit->Release();
+ }
+
+ pStm->Release();
+
+ return result;