3 /* int64_t _PDCLIB_seek( FILE *, int64_t, int )
5 This file is part of the Public Domain C Library (PDCLib).
6 Permission is granted to use, modify, and / or redistribute at will.
12 #include <_PDCLIB_glue.h>
15 #if _PDCLIB_C_MIN(2011)
16 _Static_assert(SEEK_SET == FILE_BEGIN, "SEEK_SET is incorrect");
17 _Static_assert(SEEK_CUR == FILE_CURRENT, "SEEK_CUR is incorrect");
18 _Static_assert(SEEK_END == FILE_END, "SEEK_END is incorrect");
21 extern void _PDCLIB_w32errno( void );
22 _PDCLIB_int64_t _PDCLIB_seek( struct _PDCLIB_file_t * stream, _PDCLIB_int64_t offset, int whence )
24 LARGE_INTEGER liOffset;
25 liOffset.QuadPart = offset;
26 BOOL rv = SetFilePointerEx( stream->handle, liOffset, &liOffset, whence );
35 stream->pos.offset = liOffset.QuadPart;
36 return liOffset.QuadPart;
42 #include <_PDCLIB_test.h>
46 /* Testing covered by ftell.c */