struct stream_sys_t
{
bool i_preserve_memory;
- int64_t i_pos; /* Current reading offset */
- int64_t i_size;
+ uint64_t i_pos; /* Current reading offset */
+ uint64_t i_size;
uint8_t *p_buffer;
};
static int Control( stream_t *, int i_query, va_list );
static void Delete ( stream_t * );
+#undef stream_MemoryNew
/**
* Create a stream from a memory buffer
*
* \param i_preserve_memory if this is set to false the memory buffer
* pointed to by p_buffer is freed on stream_Destroy
*/
-stream_t *__stream_MemoryNew( vlc_object_t *p_this, uint8_t *p_buffer,
- int64_t i_size, bool i_preserve_memory )
+stream_t *stream_MemoryNew( vlc_object_t *p_this, uint8_t *p_buffer,
+ uint64_t i_size, bool i_preserve_memory )
{
stream_t *s = stream_CommonNew( p_this );
stream_sys_t *p_sys;
{
if( !s->p_sys->i_preserve_memory ) free( s->p_sys->p_buffer );
free( s->p_sys );
- vlc_object_detach( s );
stream_CommonDelete( s );
}
stream_sys_t *p_sys = s->p_sys;
bool *p_bool;
- int64_t *pi_64, i_64;
+ uint64_t *pi_64, i_64;
int i_int;
switch( i_query )
{
case STREAM_GET_SIZE:
- pi_64 = (int64_t*)va_arg( args, int64_t * );
+ pi_64 = va_arg( args, uint64_t * );
*pi_64 = p_sys->i_size;
break;
break;
case STREAM_GET_POSITION:
- pi_64 = (int64_t*)va_arg( args, int64_t * );
+ pi_64 = va_arg( args, uint64_t * );
*pi_64 = p_sys->i_pos;
break;
case STREAM_SET_POSITION:
- i_64 = (int64_t)va_arg( args, int64_t );
- i_64 = __MAX( i_64, 0 );
+ i_64 = va_arg( args, uint64_t );
i_64 = __MIN( i_64, s->p_sys->i_size );
p_sys->i_pos = i_64;
break;