}
p_sys->fd = fd;
- struct stat st;
- if( fstat( fd, &st ) )
- msg_Err( p_access, "fstat(%d): %m", fd );
- p_access->info.i_size = st.st_size;
-
return VLC_SUCCESS;
}
*****************************************************************************/
static int Control( access_t *p_access, int i_query, va_list args )
{
+ access_sys_t *sys = p_access->p_sys;
bool *pb_bool;
int64_t *pi_64;
*pb_bool = true;
break;
+ case ACCESS_GET_SIZE:
+ {
+ uint64_t *s = va_arg( args, uint64_t * );
+ struct stat st;
+ if( fstat( sys->fd, &st ) )
+ {
+ msg_Err( p_access, "fstat error: %m" );
+ return VLC_EGENERIC;
+ }
+ *s = st.st_size;
+ break;
+ }
+
case ACCESS_GET_PTS_DELAY:
pi_64 = ( int64_t* )va_arg( args, int64_t * );
*pi_64 = INT64_C(1000)