soc-2008-mxcurioni: merged changes to revision 15163
[blender-staging.git] / source / blender / blenlib / intern / util.c
index 848e45ccb1bbf8cacc196ff525293737b1a87374..d37eb27bbb282967e36c8fe0da573762d786f373 100644 (file)
@@ -858,8 +858,6 @@ int BLI_strcaseeq(char *a, char *b) {
  * take the dir name, make it absolute, and clean it up, replacing
  * excess file entry stuff (like /tmp/../tmp/../)
  * note that dir isn't protected for max string names... 
- * 
- * If relbase is NULL then its ignored
  */
 
 void BLI_cleanup_dir(const char *relabase, char *dir)
@@ -873,6 +871,7 @@ void BLI_cleanup_file(const char *relabase, char *dir)
 {
        short a;
        char *start, *eind;
+
        if (relabase) {
                BLI_convertstringcode(dir, relabase);
        } else {
@@ -883,6 +882,7 @@ void BLI_cleanup_file(const char *relabase, char *dir)
                        dir = dir+2; /* skip the first // */
                }
        }
+
 #ifdef WIN32
        if(dir[0]=='.') {       /* happens for example in FILE_MAIN */
           get_default_root(dir);
@@ -960,7 +960,7 @@ void BLI_makestringcode(const char *relfile, char *file)
        char * lslash;
        char temp[FILE_MAXDIR+FILE_MAXFILE];
        char res[FILE_MAXDIR+FILE_MAXFILE];
-       
+
        /* if file is already relative, bail out */
        if(file[0]=='/' && file[1]=='/') return;
        
@@ -992,11 +992,7 @@ void BLI_makestringcode(const char *relfile, char *file)
 
        BLI_char_switch(temp, '\\', '/');
        BLI_char_switch(file, '\\', '/');
-       
-       /* remove /./ which confuse the following slash counting... */
-       BLI_cleanup_file(NULL, file);
-       BLI_cleanup_file(NULL, temp);
-       
+
        /* the last slash in the file indicates where the path part ends */
        lslash = BLI_last_slash(temp);
 
@@ -1143,8 +1139,6 @@ int BLI_convertstringcode(char *path, const char *basepath)
 
        BLI_strncpy(base, basepath, FILE_MAX);
        
-       BLI_cleanup_file(NULL, base);
-       
        /* push slashes into unix mode - strings entering this part are
           potentially messed up: having both back- and forward slashes.
           Here we push into one conform direction, and at the end we
@@ -1190,7 +1184,7 @@ int BLI_convertstringcode(char *path, const char *basepath)
        */
        BLI_char_switch(path+2, '/', '\\');
 #endif
-       
+
        return wasrelative;
 }