Usermode/ld-acess - Added two more ARM relocation types
[tpg/acess2.git] / Kernel / vfs / open.c
index 1845b7a..a886c45 100644 (file)
@@ -55,12 +55,9 @@ char *VFS_GetAbsPath(const char *Path)
        }
        
        // - Fetch ChRoot
-       if( chroot == NULL ) {
+       if( chroot == NULL )
                chroot = "";
-               chrootLen = 0;
-       } else {
-               chrootLen = strlen(chroot);
-       }
+       chrootLen = strlen(chroot);
        
        // Check if the path is already absolute
        if(Path[0] == '/') {
@@ -155,7 +152,8 @@ char *VFS_GetAbsPath(const char *Path)
                ret[iPos2] = 0;
 
        // Prepend the chroot
-       memcpy( ret, chroot, chrootLen );
+       if(chrootLen)
+               memcpy( ret, chroot, chrootLen );
        
        LEAVE('s', ret);
 //     Log_Debug("VFS", "VFS_GetAbsPath: RETURN '%s'", ret);
@@ -348,6 +346,7 @@ restart_parse:
                                }
                                curNode->Read( curNode, 0, curNode->Size, path_buffer );
                                path_buffer[ curNode->Size ] = '\0';
+                               LOG("path_buffer = '%s'", path_buffer);
                                strcat(path_buffer, Path + ofs+nextSlash);
                                
                                Path = path_buffer;
@@ -356,6 +355,7 @@ restart_parse:
                        }
 
                        // EVIL: Goto :)
+                       LOG("Symlink -> '%s', restart", Path);
                        goto restart_parse;
                }
                
@@ -454,7 +454,7 @@ int VFS_int_CreateHandle( tVFS_Node *Node, tVFS_Mount *Mount, int Mode )
 {
         int    i;
        
-       ENTER("pNode pMount iMode", Node, Mount, Mode);
+       ENTER("pNode pMount xMode", Node, Mount, Mode);
 
        i = 0;
        i |= (Mode & VFS_OPENFLAG_EXEC) ? VFS_PERM_EXECUTE : 0;

UCC git Repository :: git.ucc.asn.au