Module: wine Branch: master Commit: b1e77d3fc8cee25152309324aab632f9a9a3dcce URL: http://source.winehq.org/git/wine.git/?a=commit;h=b1e77d3fc8cee25152309324aa...
Author: Dmitry Timoshkov dmitry@baikal.ru Date: Fri Sep 9 13:42:46 2016 -0500
gdiplus: Implement GdipCreateMetafileFromFile.
Signed-off-by: Vincent Povirk vincent@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/gdiplus/metafile.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/dlls/gdiplus/metafile.c b/dlls/gdiplus/metafile.c index d471a13..6d58170 100644 --- a/dlls/gdiplus/metafile.c +++ b/dlls/gdiplus/metafile.c @@ -1922,8 +1922,22 @@ GpStatus WINGDIPAPI GdipCreateMetafileFromWmfFile(GDIPCONST WCHAR *file, GpStatus WINGDIPAPI GdipCreateMetafileFromFile(GDIPCONST WCHAR *file, GpMetafile **metafile) { - FIXME("(%p, %p): stub\n", file, metafile); - return NotImplemented; + GpStatus status; + IStream *stream; + + TRACE("(%p, %p)\n", file, metafile); + + if (!file || !metafile) return InvalidParameter; + + *metafile = NULL; + + status = GdipCreateStreamOnFile(file, GENERIC_READ, &stream); + if (status == Ok) + { + status = GdipCreateMetafileFromStream(stream, metafile); + IStream_Release(stream); + } + return status; }
GpStatus WINGDIPAPI GdipCreateMetafileFromStream(IStream *stream,