physfs compilation on windows
* external calls must always be named
* physfs has to be compiled as dll
* there shouln't be external variables, implemented a function that sets buffer
* physfs extras is now integrated in main physfs
* removed physfs extras
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <physfs.h>
#include "hwpacksmounter.h"
void hedgewarsMountPackages()
{
char ** filesList = PHYSFS_enumerateFiles("/");
char **i;
for (i = filesList; *i != NULL; i++)
{
char * fileName = *i;
int fileNameLength = strlen(fileName);
if (fileNameLength > 4)
if (strcmp(fileName + fileNameLength - 4, ".hwp") == 0)
{
const char * dir = PHYSFS_getRealDir(fileName);
if(dir)
{
char * fullPath = (char *)malloc(strlen(dir) + fileNameLength + 2);
strcpy(fullPath, dir);
strcat(fullPath, "/");
strcat(fullPath, fileName);
PHYSFS_mount(fullPath, NULL, 1);
free(fullPath);
}
}
}
PHYSFS_freeList(filesList);
}