Michael Stefaniuc : avifil32: Move CreateEditableStream() to avoid exporting a helper.

Alexandre Julliard julliard at winehq.org
Fri Jul 15 09:07:06 CDT 2016


Module: wine
Branch: master
Commit: a0b7eb0d3e060b4e4ee6eb821a19c9259e171559
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=a0b7eb0d3e060b4e4ee6eb821a19c9259e171559

Author: Michael Stefaniuc <mstefani at redhat.de>
Date:   Thu Jul 14 10:15:50 2016 +0200

avifil32: Move CreateEditableStream() to avoid exporting a helper.

Signed-off-by: Michael Stefaniuc <mstefani at redhat.de>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/avifil32/api.c             | 38 --------------------------------------
 dlls/avifil32/avifile_private.h |  1 -
 dlls/avifil32/editstream.c      | 39 ++++++++++++++++++++++++++++++++++++++-
 3 files changed, 38 insertions(+), 40 deletions(-)

diff --git a/dlls/avifil32/api.c b/dlls/avifil32/api.c
index 0715d58..5c15c1f 100644
--- a/dlls/avifil32/api.c
+++ b/dlls/avifil32/api.c
@@ -1982,44 +1982,6 @@ HRESULT WINAPI AVISaveVW(LPCWSTR szFile, CLSID *pclsidHandler,
 }
 
 /***********************************************************************
- *		CreateEditableStream	(AVIFIL32.@)
- */
-HRESULT WINAPI CreateEditableStream(PAVISTREAM *ppEditable, PAVISTREAM pSource)
-{
-  IAVIEditStream *pEdit = NULL;
-  HRESULT	  hr;
-
-  TRACE("(%p,%p)\n", ppEditable, pSource);
-
-  if (ppEditable == NULL)
-    return AVIERR_BADPARAM;
-
-  *ppEditable = NULL;
-
-  if (pSource != NULL) {
-    hr = IAVIStream_QueryInterface(pSource, &IID_IAVIEditStream,
-				   (LPVOID*)&pEdit);
-    if (SUCCEEDED(hr) && pEdit != NULL) {
-      hr = IAVIEditStream_Clone(pEdit, ppEditable);
-      IAVIEditStream_Release(pEdit);
-
-      return hr;
-    }
-  }
-
-  /* need own implementation of IAVIEditStream */
-  pEdit = AVIFILE_CreateEditStream(pSource);
-  if (pEdit == NULL)
-    return AVIERR_MEMORY;
-
-  hr = IAVIEditStream_QueryInterface(pEdit, &IID_IAVIStream,
-                                     (LPVOID*)ppEditable);
-  IAVIEditStream_Release(pEdit);
-
-  return hr;
-}
-
-/***********************************************************************
  *		EditStreamClone		(AVIFIL32.@)
  */
 HRESULT WINAPI EditStreamClone(PAVISTREAM pStream, PAVISTREAM *ppResult)
diff --git a/dlls/avifil32/avifile_private.h b/dlls/avifil32/avifile_private.h
index 0fd74c4..16893d9 100644
--- a/dlls/avifil32/avifile_private.h
+++ b/dlls/avifil32/avifile_private.h
@@ -62,7 +62,6 @@ extern HRESULT AVIFILE_CreateAVIFile(IUnknown *pUnkOuter, REFIID riid, LPVOID *p
 extern HRESULT AVIFILE_CreateWAVFile(IUnknown *outer_unk, REFIID riid, void **ret_iface) DECLSPEC_HIDDEN;
 extern HRESULT AVIFILE_CreateACMStream(REFIID riid, LPVOID *ppobj) DECLSPEC_HIDDEN;
 extern HRESULT AVIFILE_CreateICMStream(REFIID riid, LPVOID *ppobj) DECLSPEC_HIDDEN;
-extern PAVIEDITSTREAM AVIFILE_CreateEditStream(PAVISTREAM pstream) DECLSPEC_HIDDEN;
 extern PGETFRAME AVIFILE_CreateGetFrame(PAVISTREAM pstream) DECLSPEC_HIDDEN;
 extern PAVIFILE  AVIFILE_CreateAVITempFile(int nStreams, const PAVISTREAM *ppStreams) DECLSPEC_HIDDEN;
 
diff --git a/dlls/avifil32/editstream.c b/dlls/avifil32/editstream.c
index 45a4d98..a6c534e 100644
--- a/dlls/avifil32/editstream.c
+++ b/dlls/avifil32/editstream.c
@@ -70,6 +70,8 @@ struct _IAVIEditStreamImpl {
   LPBITMAPINFOHEADER   lpFrame;    /* frame of pCurStream */
 };
 
+static IAVIEditStream *AVIFILE_CreateEditStream(IAVIStream *stream);
+
 static inline IAVIEditStreamImpl *impl_from_IAVIEditStream(IAVIEditStream *iface)
 {
     return CONTAINING_RECORD(iface, IAVIEditStreamImpl, IAVIEditStream_iface);
@@ -1005,7 +1007,7 @@ static const struct IAVIStreamVtbl ieditstast = {
   IEditAVIStream_fnSetInfo
 };
 
-PAVIEDITSTREAM AVIFILE_CreateEditStream(PAVISTREAM pstream)
+static IAVIEditStream *AVIFILE_CreateEditStream(IAVIStream *pstream)
 {
   IAVIEditStreamImpl *pedit = NULL;
 
@@ -1021,3 +1023,38 @@ PAVIEDITSTREAM AVIFILE_CreateEditStream(PAVISTREAM pstream)
 
   return (PAVIEDITSTREAM)pedit;
 }
+
+/***********************************************************************
+ *             CreateEditableStream     (AVIFIL32.@)
+ */
+HRESULT WINAPI CreateEditableStream(IAVIStream **editable, IAVIStream *src)
+{
+    IAVIEditStream *edit = NULL;
+    HRESULT hr;
+
+    TRACE("(%p,%p)\n", editable, src);
+
+    if (!editable)
+        return AVIERR_BADPARAM;
+    *editable = NULL;
+
+    if (src) {
+        hr = IAVIStream_QueryInterface(src, &IID_IAVIEditStream, (void**)&edit);
+        if (SUCCEEDED(hr) && edit) {
+            hr = IAVIEditStream_Clone(edit, editable);
+            IAVIEditStream_Release(edit);
+
+            return hr;
+        }
+    }
+
+    /* Need own implementation of IAVIEditStream */
+    edit = AVIFILE_CreateEditStream(src);
+    if (!edit)
+        return AVIERR_MEMORY;
+
+    hr = IAVIEditStream_QueryInterface(edit, &IID_IAVIStream, (void**)editable);
+    IAVIEditStream_Release(edit);
+
+    return hr;
+}




More information about the wine-cvs mailing list