misc/libphyslayer/physfslualoader.c
branchphysfslayer
changeset 8524 a65e9bcf0a03
parent 8522 1853628ae285
child 9991 3858d99476f5
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/misc/libphyslayer/physfslualoader.c	Fri Feb 22 05:43:56 2013 +0100
@@ -0,0 +1,30 @@
+#include "lua.h"
+#include "physfs.h"
+
+#define BUFSIZE 1024
+
+void *physfsReaderBuffer;
+
+PHYSFS_DECL const char * physfsReader(lua_State *L, PHYSFS_File *f, size_t *size)
+{
+
+    if(PHYSFS_eof(f))
+    {
+        return NULL;
+    }
+    else
+    {
+        *size = PHYSFS_readBytes(f, physfsReaderBuffer, BUFSIZE);
+
+        if(*size == 0)
+            return NULL;
+        else
+            return physfsReaderBuffer;
+    }
+}
+
+PHYSFS_DECL void physfsReaderSetBuffer(void *buffer)
+{
+    physfsReaderBuffer = buffer;
+}
+