[PATCH v4 3/3] mfplat: Add MFCreateFile stub.

Zebediah Figura z.figura12 at gmail.com
Fri Nov 2 15:55:40 CDT 2018


On 11/2/18 3:27 PM, Sven Baars wrote:
> Signed-off-by: Sven Baars <sven.wine at gmail.com>
> ---
> v3: Actually read the file and handle all flags.
> v4: Rebased on the previous patch.
> 
>   dlls/mfplat/main.c            |  78 ++++++++++++++++++++++-
>   dlls/mfplat/mfplat.spec       |   2 +-
>   dlls/mfplat/tests/Makefile.in |   2 +
>   dlls/mfplat/tests/mfplat.c    | 114 ++++++++++++++++++++++++++++++++++
>   dlls/mfplat/tests/resource.rc |  24 +++++++
>   dlls/mfplat/tests/test.mp4    | Bin 0 -> 1554 bytes
>   include/mfapi.h               |   2 +
>   7 files changed, 220 insertions(+), 2 deletions(-)
>   create mode 100644 dlls/mfplat/tests/resource.rc
>   create mode 100644 dlls/mfplat/tests/test.mp4
> 
> diff --git a/dlls/mfplat/main.c b/dlls/mfplat/main.c
> index 7865a8935f..130597e8e7 100644
> --- a/dlls/mfplat/main.c
> +++ b/dlls/mfplat/main.c
> @@ -850,6 +850,8 @@ typedef struct _mfbytestream
>       mfattributes attributes;
>       IMFByteStream IMFByteStream_iface;
>       IMFAttributes IMFAttributes_iface;
> +
> +    HANDLE file;
>   } mfbytestream;
>   
>   static inline mfbytestream *impl_from_IMFByteStream(IMFByteStream *iface)

This strikes me as a little janky. Arguably it could make sense, but I'd 
like to get a sense of how MFCreateMFByteStreamOnStream would fit in 
with this (plus any other APIs that create byte stream objects). Taking 
a less cursory look at the API of IMFByteStream, my intuition leads me 
to think it would make more sense just to create separate objects; there 
doesn't seem to be a lot of room for shared code.



More information about the wine-devel mailing list