misc/physfs/extras/physfslualoader.c
author koda
Wed, 19 Dec 2012 18:17:23 +0100
changeset 8312 9e8781faabab
parent 8119 257ffa847aa2
permissions -rw-r--r--
can compile engine as library on linux but not run the executable (automatically), most likely breaking other platforms (wrt engine-as-library)

#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;
}