summaryrefslogtreecommitdiff
path: root/src/input/libdvdnav
diff options
context:
space:
mode:
Diffstat (limited to 'src/input/libdvdnav')
-rw-r--r--src/input/libdvdnav/.hgignore (renamed from src/input/libdvdnav/.cvsignore)0
-rw-r--r--src/input/libdvdnav/Makefile.am2
-rw-r--r--src/input/libdvdnav/bswap.h6
-rw-r--r--src/input/libdvdnav/diff_against_cvs.patch13
-rw-r--r--src/input/libdvdnav/dvd_reader.c2
-rw-r--r--src/input/libdvdnav/remap.c7
6 files changed, 24 insertions, 6 deletions
diff --git a/src/input/libdvdnav/.cvsignore b/src/input/libdvdnav/.hgignore
index 7d926a554..7d926a554 100644
--- a/src/input/libdvdnav/.cvsignore
+++ b/src/input/libdvdnav/.hgignore
diff --git a/src/input/libdvdnav/Makefile.am b/src/input/libdvdnav/Makefile.am
index 2aadb3588..412828261 100644
--- a/src/input/libdvdnav/Makefile.am
+++ b/src/input/libdvdnav/Makefile.am
@@ -22,7 +22,7 @@ libdvdnav_la_SOURCES = \
dvd_reader.c \
dvd_input.c \
dvd_udf.c
-libdvdnav_la_LIBADD = $(THREAD_LIBS)
+libdvdnav_la_LIBADD = $(PTHREAD_LIBS)
libdvdnav_la_CFLAGS = $(VISIBILITY_FLAG)
libdvdnav_la_LDFLAGS = -avoid-version -module
diff --git a/src/input/libdvdnav/bswap.h b/src/input/libdvdnav/bswap.h
index 7d7acd556..c1fc7a045 100644
--- a/src/input/libdvdnav/bswap.h
+++ b/src/input/libdvdnav/bswap.h
@@ -41,6 +41,12 @@
#define B2N_32(x) x = bswap_32(x)
#define B2N_64(x) x = bswap_64(x)
+#elif defined(__APPLE__)
+#include <libkern/OSByteOrder.h>
+#define B2N_16(x) x = OSSwapBigToHostInt16(x)
+#define B2N_32(x) x = OSSwapBigToHostInt32(x)
+#define B2N_64(x) x = OSSwapBigToHostInt64(x)
+
#elif defined(__NetBSD__)
#include <sys/endian.h>
#define B2N_16(x) BE16TOH(x)
diff --git a/src/input/libdvdnav/diff_against_cvs.patch b/src/input/libdvdnav/diff_against_cvs.patch
index 6afca3a98..202474fef 100644
--- a/src/input/libdvdnav/diff_against_cvs.patch
+++ b/src/input/libdvdnav/diff_against_cvs.patch
@@ -263,6 +263,19 @@ diff -u -p -u -r1.3 bswap.h
#include <byteswap.h>
#define B2N_16(x) x = bswap_16(x)
#define B2N_32(x) x = bswap_32(x)
+@@ -41,6 +41,12 @@
+ #define B2N_32(x) x = bswap_32(x)
+ #define B2N_64(x) x = bswap_64(x)
+
++#elif defined(__APPLE__)
++#include <libkern/OSByteOrder.h>
++#define B2N_16(x) x = OSSwapBigToHostInt16(x)
++#define B2N_32(x) x = OSSwapBigToHostInt32(x)
++#define B2N_64(x) x = OSSwapBigToHostInt64(x)
++
+ #elif defined(__NetBSD__)
+ #include <sys/endian.h>
+ #define B2N_16(x) BE16TOH(x)
Index: src/input/libdvdnav/dvd_reader.c
===================================================================
RCS file: /cvsroot/xine/xine-lib/src/input/libdvdnav/dvd_reader.c,v
diff --git a/src/input/libdvdnav/dvd_reader.c b/src/input/libdvdnav/dvd_reader.c
index e71d6ca42..7ecd8f1ba 100644
--- a/src/input/libdvdnav/dvd_reader.c
+++ b/src/input/libdvdnav/dvd_reader.c
@@ -603,10 +603,12 @@ static int findDirFile( const char *path, const char *file, char *filename )
sprintf( filename, "%s%s%s", path,
( ( path[ strlen( path ) - 1 ] == '/' ) ? "" : "/" ),
ent->d_name );
+ closedir (dir);
return 0;
}
}
+ closedir (dir);
return -1;
}
diff --git a/src/input/libdvdnav/remap.c b/src/input/libdvdnav/remap.c
index 86cf3a4ad..f2049ac06 100644
--- a/src/input/libdvdnav/remap.c
+++ b/src/input/libdvdnav/remap.c
@@ -15,7 +15,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: remap.c,v 1.5 2006/09/17 13:01:08 valtri Exp $
+ * $Id: remap.c,v 1.6 2006/12/08 16:26:10 mshopf Exp $
*/
#include <stdlib.h>
@@ -193,10 +193,7 @@ remap_t* remap_loadmap( char *title) {
/* Build the map filename */
home = getenv("HOME"); assert(home);
- strncpy(fname, home, sizeof(fname));
- strncat(fname, "/.dvdnav/", sizeof(fname));
- strncat(fname, title, sizeof(fname));
- strncat(fname, ".map", sizeof(fname));
+ snprintf (fname, sizeof(fname), "%s/.dvdnav/%s.map", home, title);
/* Open the map file */
fp = fopen( fname, "r");