From: Rémi Bernon rbernon@codeweavers.com
--- dlls/winedmo/unixlib.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/dlls/winedmo/unixlib.c b/dlls/winedmo/unixlib.c index 15500ee10b4..431b612d7d6 100644 --- a/dlls/winedmo/unixlib.c +++ b/dlls/winedmo/unixlib.c @@ -45,6 +45,7 @@ int64_t unix_seek_callback( void *opaque, int64_t offset, int whence ) if (whence == AVSEEK_SIZE) return context->length; if (whence == SEEK_END) offset += context->length; if (whence == SEEK_CUR) offset += context->position; + if ((UINT64)offset > context->length) offset = context->length;
params.offset = offset; status = KeUserDispatchCallback( ¶ms.dispatch, sizeof(params), &ret_ptr, &ret_len );