summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorFrantišek Dvořák <valtri@users.sourceforge.net>2005-08-29 15:28:16 +0000
committerFrantišek Dvořák <valtri@users.sourceforge.net>2005-08-29 15:28:16 +0000
commit0f8fd3b22893dd07db6506a1ba4d298e51a1c985 (patch)
tree291cf3594687cdaaa23f9527ba6d9f20f1a6283d /lib
parent7cb89d83b0d845270e583c2848b0eaaa5e053217 (diff)
downloadxine-lib-0f8fd3b22893dd07db6506a1ba4d298e51a1c985.tar.gz
xine-lib-0f8fd3b22893dd07db6506a1ba4d298e51a1c985.tar.bz2
*BUGFIX*
Windows ports updates: - finished M$VC port update - moved xine plugins back to normal location for Windows ports, added relative directories (used relative to ${prefix}), make sure it's thread-safe (but it's still hacky) - fixed ugly bug with loading plugins, when working drive was differrent from plugins directory directory - directory and subdirectory separator called as platform specific - fix crash with newer win32 pthread (missing mutex_init in vo plugin), yes! - small doc update CVS patchset: 7712 CVS date: 2005/08/29 15:28:16
Diffstat (limited to 'lib')
-rw-r--r--lib/dirent_msvc.c2
-rw-r--r--lib/os_internal.h22
2 files changed, 21 insertions, 3 deletions
diff --git a/lib/dirent_msvc.c b/lib/dirent_msvc.c
index e36d7402c..b43fae1ae 100644
--- a/lib/dirent_msvc.c
+++ b/lib/dirent_msvc.c
@@ -19,7 +19,7 @@
*/
#include "config.h"
-#include <dirent.h>
+
#include <errno.h>
#include <io.h>
#include <stdlib.h>
diff --git a/lib/os_internal.h b/lib/os_internal.h
index 24d810ffd..0a5fbca72 100644
--- a/lib/os_internal.h
+++ b/lib/os_internal.h
@@ -4,6 +4,7 @@
#include <stddef.h>
#include "os_types.h"
+
#if defined (__SVR4) && defined (__sun)
# include <sys/int_types.h>
@@ -16,6 +17,19 @@
#endif
+#if defined(WIN32)
+# define XINE_DIRECTORY_SEPARATOR_STRING ";"
+# define XINE_DIRECTORY_SEPARATOR_CHAR ';'
+# define XINE_SUBDIRECTORY_SEPARATOR_STRING "\\"
+# define XINE_SUBDIRECTORY_SEPARATOR_CHAR '\\'
+#else
+# define XINE_DIRECTORY_SEPARATOR_STRING ":"
+# define XINE_DIRECTORY_SEPARATOR_CHAR ':'
+# define XINE_SUBDIRECTORY_SEPARATOR_STRING "/"
+# define XINE_SUBDIRECTORY_SEPARATOR_CHAR '/'
+#endif
+
+
/* replacement of strndup */
#ifndef HAVE_STRNDUP
#define strndup(S, N) _xine_private_strndup((S), (N))
@@ -80,8 +94,12 @@ char *_xine_private_strsep(char **stringp, const char *delim);
#endif
#ifdef WIN32
-#include <io.h>
-# define mkdir(A, B) _mkdir((A))
+# include <io.h>
+# ifdef _MSC_VER
+# include <direct.h>
+# else
+# define mkdir(A, B) _mkdir((A))
+# endif
# ifndef S_ISDIR
# define S_ISDIR(m) ((m) & _S_IFDIR)