Mercurial > mplayer.hg
view libmpdvdkit2/libdvdcss_changes.diff @ 18903:58872b168da0
fixes 1000l bug that made MPlayer segfault when an overlaping edl line was found
author | reynaldo |
---|---|
date | Wed, 05 Jul 2006 06:39:39 +0000 |
parents | 68145aae7349 |
children | e5d97c5f3c32 |
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; --- css.c 2005-07-11 14:24:09.000000000 +0200 +++ css.c 2005-10-01 20:14:37.000000000 +0200 @@ -53,7 +56,7 @@ # include <limits.h> #endif -#include "dvdcss/dvdcss.h" +#include "dvdcss.h" #include "common.h" #include "css.h" --- device.c 2005-07-11 13:33:34.000000000 +0200 +++ device.c 2005-10-01 19:08:07.000000000 +0200 @@ -55,7 +44,7 @@ # include <sys/uio.h> /* struct iovec */ #endif -#include "dvdcss/dvdcss.h" +#include "dvdcss.h" #include "common.h" #include "css.h" @@ -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; --- error.c 2004-02-24 16:46:49.000000000 +0100 +++ error.c 2005-10-01 20:15:46.000000000 +0200 @@ -34,7 +37,7 @@ # include <limits.h> #endif -#include "dvdcss/dvdcss.h" +#include "dvdcss.h" #include "common.h" #include "css.h" --- libdvdcss.c 2004-08-13 15:40:18.000000000 +0200 +++ libdvdcss.c 2005-10-01 19:11:27.000000000 +0200 @@ -124,7 +127,7 @@ # include <direct.h> #endif -#include "dvdcss/dvdcss.h" +#include "dvdcss.h" #include "common.h" #include "css.h" @@ -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 )