]> Chaos Git - corbenik/ctrulib.git/commitdiff
FS : fixed FSFILE_Write (oops)
authorsmea <smealum@gmail.com>
Thu, 23 Jan 2014 22:15:41 +0000 (23:15 +0100)
committersmea <smealum@gmail.com>
Thu, 23 Jan 2014 22:15:41 +0000 (23:15 +0100)
libctru/source/FS.c

index 06df4435996365bc0736d34390c20018ccf58aad..e025a6fc1f1ebb3d59edd1428a75fa2e5c57d7d6 100644 (file)
@@ -74,8 +74,9 @@ Result FSFILE_Read(Handle handle, u32 *bytesRead, u64 offset, u32 *buffer, u32 s
        return cmdbuf[1];
 }
 
-//WARNING : using wrong flushFlags CAN corrupt the archive you're writing to
-Result FSFILE_Write(Handle handle, u32 *bytesWritten, u64 offset, u32 *buffer, u32 size, u32 flushFlags)
+//WARNING : using wrong flushFlags CAN corrupt the archive you're writing to.
+//another warning : data should *not* be in RO memory
+Result FSFILE_Write(Handle handle, u32 *bytesWritten, u64 offset, u32 *data, u32 size, u32 flushFlags)
 {
        u32 *cmdbuf=getThreadCommandBuffer();
 
@@ -84,8 +85,8 @@ Result FSFILE_Write(Handle handle, u32 *bytesWritten, u64 offset, u32 *buffer, u
        cmdbuf[2]=(u32)(offset>>32);
        cmdbuf[3]=size;
        cmdbuf[4]=flushFlags;
-       cmdbuf[5]=(size<<4)|12;
-       cmdbuf[6]=(u32)buffer;
+       cmdbuf[5]=(size<<4)|10;
+       cmdbuf[6]=(u32)data;
 
        Result ret=0;
        if((ret=svc_sendSyncRequest(handle)))return ret;