[vlc-devel] [PATCH] Win32: define fstat as well as stat

Naohiro KORIYAMA nkoriyama at gmail.com
Wed Feb 1 23:49:56 CET 2012


I noticed this issue when I played TS file on win32 build and VLC
showed time as 0:00:00.
It showed properly on Win64, Mac OS X builds.

So, I debugged with TS file 2.78GB(2,993,376,420).

At module/demux/ts.c:1996
int64_t i_size = stream_Size( p_demux->s );

using fstat:
i_size = 4611686018427387904

using _fstati64:
i_size = 2993376420


2012/2/2 Naohiro KORIYAMA <nkoriyama at gmail.com>:
> Fix wrong result of stream_Size() on win32 build.
>
> ---
>  include/vlc_fs.h |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/include/vlc_fs.h b/include/vlc_fs.h
> index d5b78e2..94b8515 100644
> --- a/include/vlc_fs.h
> +++ b/include/vlc_fs.h
> @@ -69,6 +69,9 @@ static inline void vlc_rewinddir( DIR *dir )
>  #  ifndef stat
>  #   define stat _stati64
>  #  endif
> +#  ifndef fstat
> +#   define fstat _fstati64
> +#  endif
>  # endif
>  #endif
>
> --
> 1.7.8.3



-- 
KORIYAMA, Naohiro
nkoriyama at gmail.com



More information about the vlc-devel mailing list