From f67c9f03f7b4aaa3688ef74b255690d52ded3db2 Mon Sep 17 00:00:00 2001 From: John Hodge Date: Fri, 22 Oct 2010 14:13:56 +0800 Subject: [PATCH] Don't ask me how, but it's booting again --- Kernel/syscalls.c | 2 ++ Kernel/vfs/open.c | 2 +- Modules/Filesystems/FAT/fat.c | 4 ++-- Usermode/Libraries/ld-acess.so_src/elf.c | 5 ++++- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Kernel/syscalls.c b/Kernel/syscalls.c index d286d21d..14950dd5 100644 --- a/Kernel/syscalls.c +++ b/Kernel/syscalls.c @@ -248,6 +248,8 @@ void SyscallHandler(tSyscallRegs *Regs) // Read Directory case SYS_READDIR: + // TODO: What if the filename is longer? + // Maybe force it to be a 256 byte buffer if( !Syscall_Valid(8, Regs->Arg2) ) { err = -EINVAL; ret = -1; diff --git a/Kernel/vfs/open.c b/Kernel/vfs/open.c index 32d6e4d9..bd43a5f3 100644 --- a/Kernel/vfs/open.c +++ b/Kernel/vfs/open.c @@ -2,7 +2,7 @@ * Acess2 VFS * - Open, Close and ChDir */ -#define DEBUG 1 +#define DEBUG 0 #include #include #include "vfs.h" diff --git a/Modules/Filesystems/FAT/fat.c b/Modules/Filesystems/FAT/fat.c index a63bac01..7eab0937 100644 --- a/Modules/Filesystems/FAT/fat.c +++ b/Modules/Filesystems/FAT/fat.c @@ -17,7 +17,7 @@ * \todo Implement changing of the parent directory when a file is written to * \todo Implement file creation / deletion */ -#define DEBUG 1 +#define DEBUG 0 #define VERBOSE 1 #define CACHE_FAT 0 //!< Caches the FAT in memory @@ -941,7 +941,7 @@ tVFS_Node *FAT_int_CreateNode(tVFS_Node *Parent, fat_filetable *Entry, int Pos) tFAT_VolInfo *disk = Parent->ImplPtr; ENTER("pParent pFT", Parent, Entry); - LOG("disk = %p\n", disk); + LOG("disk = %p", disk); memset(&node, 0, sizeof(tVFS_Node)); diff --git a/Usermode/Libraries/ld-acess.so_src/elf.c b/Usermode/Libraries/ld-acess.so_src/elf.c index b399f49b..e1fcd2d4 100644 --- a/Usermode/Libraries/ld-acess.so_src/elf.c +++ b/Usermode/Libraries/ld-acess.so_src/elf.c @@ -51,6 +51,9 @@ int ElfRelocate(void *Base, char **envp, char *Filename) DEBUGS("ElfRelocate: (Base=0x%x)\n", Base); + // Check magic header + + // Parse Program Header to get Dynamic Table phtab = Base + hdr->phoff; iSegmentCount = hdr->phentcount; @@ -119,7 +122,7 @@ int ElfRelocate(void *Base, char **envp, char *Filename) } if(dynsymtab == NULL) { - SysDebug("WARNING: No Dynamic Symbol table, returning\n"); + SysDebug("ld-acess.so - WARNING: No Dynamic Symbol table, returning\n"); return hdr->entrypoint; } -- 2.20.1