summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfaust3 <faust3@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-04-18 18:17:05 +0000
committerfaust3 <faust3@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-04-18 18:17:05 +0000
commitc24c7d909e158cbc19105aad5b0a09c0709fff51 (patch)
treef3c41b1866120885edf5a9e358b93b548870c72f
parent40a073bea4d4ab8ebdd1240850ad1eefc5835f37 (diff)
downloadmpv-c24c7d909e158cbc19105aad5b0a09c0709fff51.tar.bz2
mpv-c24c7d909e158cbc19105aad5b0a09c0709fff51.tar.xz
allow config file loading outside of cygwin environment
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9927 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--get_path.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/get_path.c b/get_path.c
index 9d0c1096a3..081a4e735d 100644
--- a/get_path.c
+++ b/get_path.c
@@ -2,11 +2,27 @@
char *get_path(char *filename){
char *homedir;
char *buff;
+#if defined(__MINGW32__)||defined(__CYGWIN__)
+ static char *config_dir = "/mplayer";
+#else
static char *config_dir = "/.mplayer";
+#endif
int len;
if ((homedir = getenv("HOME")) == NULL)
+#if defined(__MINGW32__)||defined(__CYGWIN__) /*hack to get fonts etc. loaded outside of cygwin environment*/
+ {
+ int __stdcall GetModuleFileNameA(void* hModule,char* lpFilename,int nSize);
+ int i,imax=0;
+ char exedir[MAX_PATH];
+ GetModuleFileNameA(NULL, exedir, MAX_PATH);
+ for(i=0; i< strlen(exedir);i++)if(exedir[i] =='\\'){exedir[i]='/';imax=i;}
+ exedir[imax]='\0';
+ homedir = exedir;
+ }
+#else
return NULL;
+#endif
len = strlen(homedir) + strlen(config_dir) + 1;
if (filename == NULL) {
if ((buff = (char *) malloc(len)) == NULL)