From aa0e7aa1fd6b34b223b48ce84d65e437a00d0693 Mon Sep 17 00:00:00 2001 From: Hans Leidekker Date: Wed, 11 Dec 2019 17:18:25 +0100 Subject: [PATCH] msado15: Implement _Stream_SetEOS. Signed-off-by: Hans Leidekker Signed-off-by: Alexandre Julliard --- dlls/msado15/stream.c | 7 +++++-- dlls/msado15/tests/msado15.c | 13 +++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/dlls/msado15/stream.c b/dlls/msado15/stream.c index 52f35afe3cc..c6add70b1bc 100644 --- a/dlls/msado15/stream.c +++ b/dlls/msado15/stream.c @@ -370,8 +370,11 @@ static HRESULT WINAPI stream_Write( _Stream *iface, VARIANT buf ) static HRESULT WINAPI stream_SetEOS( _Stream *iface ) { - FIXME( "%p\n", iface ); - return E_NOTIMPL; + struct stream *stream = impl_from_Stream( iface ); + + TRACE( "%p\n", stream ); + + return resize_buffer( stream, stream->pos ); } static HRESULT WINAPI stream_CopyTo( _Stream *iface, _Stream *dst, LONG size ) diff --git a/dlls/msado15/tests/msado15.c b/dlls/msado15/tests/msado15.c index a63ab445a1e..3f297f4ce2e 100644 --- a/dlls/msado15/tests/msado15.c +++ b/dlls/msado15/tests/msado15.c @@ -210,6 +210,19 @@ static void test_Stream(void) hr = _Stream_put_Position( stream, 2 ); ok( hr == S_OK, "got %08x\n", hr ); + hr = _Stream_SetEOS( stream ); + ok( hr == S_OK, "got %08x\n", hr ); + + pos = -1; + hr = _Stream_get_Position( stream, &pos ); + ok( hr == S_OK, "got %08x\n", hr ); + ok( pos == 2, "got %d\n", pos ); + + size = -1; + hr = _Stream_get_Size( stream, &size ); + ok( hr == S_OK, "got %08x\n", hr ); + ok( size == 2, "got %d\n", size ); + hr = _Stream_Close( stream ); ok( hr == S_OK, "got %08x\n", hr );