Mercurial > mplayer.hg
view libmpdvdkit2/libdvdcss_changes.diff @ 20139:1ef90de62efa
Fix problems on live streams with huge timestamps, causing overflows and
negative pts values. It also changes pts to double, since there is no
enough precision in float to represent 32bit uint timestamps.
author | rtogni |
---|---|
date | Mon, 09 Oct 2006 20:00:02 +0000 |
parents | e5d97c5f3c32 |
children |
line wrap: on
line source
--- common.h 2005-10-11 10:55:45.000000000 +0200 +++ common.h 2005-10-11 14:07:42.000000000 +0200 @@ -50,10 +53,9 @@ # define PATH_MAX MAX_PATH #endif -#define lseek _lseeki64 - /* several type definitions */ # if defined( __MINGW32__ ) +#define lseek _lseeki64 # if !defined( _OFF_T_ ) typedef long long _off_t; typedef _off_t off_t; --- device.c 2005-07-11 13:33:34.000000000 +0200 +++ device.c 2005-10-01 19:08:07.000000000 +0200 @@ -143,8 +132,11 @@ print_debug( dvdcss, "opening target `%s'", psz_device ); #if defined( WIN32 ) - /* If device is not "X:", we are actually opening a file. */ - dvdcss->b_file = !psz_device[0] || psz_device[1] != ':' || psz_device[2]; + dvdcss->b_file = 1; + /* If device is "X:" or "X:\", we are not actually opening a file. */ + if (psz_device[0] && psz_device[1] == ':' && + (!psz_device[2] || (psz_device[2] == '\\' && !psz_device[3]))) + dvdcss->b_file = 0; /* Initialize readv temporary buffer */ dvdcss->p_readv_buffer = NULL; --- libdvdcss.c 2004-08-13 15:40:18.000000000 +0200 +++ libdvdcss.c 2005-10-01 19:11:27.000000000 +0200 @@ -301,6 +301,10 @@ { psz_home = getenv( "HOME" ); } + if( psz_home == NULL ) + { + psz_home = getenv( "USERPROFILE" ); + } /* Cache our keys in ${HOME}/.dvdcss/ */ if( psz_home )