Usermode/libc - Fixing little bugs/speed issues
[tpg/acess2.git] / Usermode / Libraries / libc.so_src / fileIO.c
index 5b479aa..441e72e 100644 (file)
@@ -82,7 +82,7 @@ EXPORT FILE *freopen(const char *file, const char *mode, FILE *fp)
        case 'x':       openFlags = OPENFLAG_EXEC;\r
                break;\r
        }\r
-       \r
+\r
        //Open File\r
        if(fp->FD != -1)\r
                fp->FD = reopen(fp->FD, file, openFlags);\r
@@ -225,7 +225,8 @@ EXPORT size_t fread(void *ptr, size_t size, size_t num, FILE *fp)
 {\r
         int    ret;\r
        if(!fp || !fp->FD)      return -1;\r
-       \r
+\r
+       // TODO: Fit the spec better with the return value      \r
        ret = read(fp->FD, ptr, size*num);\r
        \r
        return ret;\r
@@ -427,7 +428,7 @@ EXPORT int vsnprintf(char *buf, size_t __maxlen, const char *format, va_list arg
                        _addchar('*');\r
                        _addchar('0');\r
                        _addchar('x');\r
-                       arg = va_arg(args, uint32_t);\r
+                       arg = va_arg(args, intptr_t);\r
                        itoa(tmp, arg, 16, minSize, pad, 0);\r
                        precision = -1;\r
                        goto sprintf_puts;\r
@@ -457,8 +458,7 @@ EXPORT int vsnprintf(char *buf, size_t __maxlen, const char *format, va_list arg
 \r
                // String\r
                case 's':\r
-                       arg = va_arg(args, uint32_t);\r
-                       p = (void*)(intptr_t)arg;\r
+                       p = va_arg(args, char*);\r
                sprintf_puts:\r
                        if(!p)  p = "(null)";\r
                        //_SysDebug("vsnprintf: p = '%s'", p);\r

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