Esempio n. 1
0
File: dir.c Progetto: leonlee/tome
static int DIR_rename(dvoid *opaque, const char *src, const char *dst)
{
    char *fsrc = __PHYSFS_platformCvtToDependent((char *) opaque, src, NULL);
    char *fdst = __PHYSFS_platformCvtToDependent((char *) opaque, dst, NULL);
    int retval;

    BAIL_IF_MACRO(fsrc == NULL, NULL, 0);
    BAIL_IF_MACRO(fdst == NULL, NULL, 0);
    retval = __PHYSFS_platformRename(fsrc, fdst);
    allocator.Free(fsrc);
    allocator.Free(fdst);
    return(retval);
} /* DIR_mkdir */
Esempio n. 2
0
File: dir.c Progetto: leonlee/tome
static int DIR_mkdir(dvoid *opaque, const char *name)
{
    char *f = __PHYSFS_platformCvtToDependent((char *) opaque, name, NULL);
    int retval;

    BAIL_IF_MACRO(f == NULL, NULL, 0);
    retval = __PHYSFS_platformMkDir(f);
    allocator.Free(f);
    return(retval);
} /* DIR_mkdir */
Esempio n. 3
0
File: dir.c Progetto: UIKit0/paragui
static int DIR_mkdir(DirHandle *h, const char *name)
{
    char *f = __PHYSFS_platformCvtToDependent((char *)(h->opaque), name, NULL);
    int retval;

    BAIL_IF_MACRO(f == NULL, NULL, 0);
    retval = __PHYSFS_platformMkDir(f);
    free(f);
    return(retval);
} /* DIR_mkdir */
Esempio n. 4
0
File: dir.c Progetto: leonlee/tome
static int DIR_isSymLink(dvoid *opaque, const char *name, int *fileExists)
{
    char *f = __PHYSFS_platformCvtToDependent((char *) opaque, name, NULL);
    int retval = 0;

    BAIL_IF_MACRO(f == NULL, NULL, 0);
    *fileExists = __PHYSFS_platformExists(f);
    if (*fileExists)
        retval = __PHYSFS_platformIsSymLink(f);
    allocator.Free(f);
    return(retval);
} /* DIR_isSymLink */
Esempio n. 5
0
File: dir.c Progetto: leonlee/tome
static int DIR_isDirectory(dvoid *opaque, const char *name, int *fileExists)
{
    char *d = __PHYSFS_platformCvtToDependent((char *) opaque, name, NULL);
    int retval = 0;

    BAIL_IF_MACRO(d == NULL, NULL, 0);
    *fileExists = __PHYSFS_platformExists(d);
    if (*fileExists)
        retval = __PHYSFS_platformIsDirectory(d);
    allocator.Free(d);
    return(retval);
} /* DIR_isDirectory */
Esempio n. 6
0
File: dir.c Progetto: leonlee/tome
static void DIR_enumerateFiles(dvoid *opaque, const char *dname,
                               int omitSymLinks, PHYSFS_EnumFilesCallback cb,
                               const char *origdir, void *callbackdata)
{
    char *d = __PHYSFS_platformCvtToDependent((char *)opaque, dname, NULL);
    if (d != NULL)
    {
        __PHYSFS_platformEnumerateFiles(d, omitSymLinks, cb,
                                        origdir, callbackdata);
        allocator.Free(d);
    } /* if */
} /* DIR_enumerateFiles */
Esempio n. 7
0
File: dir.c Progetto: UIKit0/paragui
static int DIR_isSymLink(DirHandle *h, const char *name, int *fileExists)
{
    char *f = __PHYSFS_platformCvtToDependent((char *)(h->opaque), name, NULL);
    int retval = 0;

    BAIL_IF_MACRO(f == NULL, NULL, 0);
    *fileExists = __PHYSFS_platformExists(f);
    if (*fileExists)
        retval = __PHYSFS_platformIsSymLink(f);
    free(f);
    return(retval);
} /* DIR_isSymLink */
Esempio n. 8
0
File: dir.c Progetto: UIKit0/paragui
static int DIR_isDirectory(DirHandle *h, const char *name, int *fileExists)
{
    char *d = __PHYSFS_platformCvtToDependent((char *)(h->opaque), name, NULL);
    int retval = 0;

    BAIL_IF_MACRO(d == NULL, NULL, 0);
    *fileExists = __PHYSFS_platformExists(d);
    if (*fileExists)
        retval = __PHYSFS_platformIsDirectory(d);
    free(d);
    return(retval);
} /* DIR_isDirectory */
Esempio n. 9
0
File: dir.c Progetto: UIKit0/paragui
static LinkedStringList *DIR_enumerateFiles(DirHandle *h,
                                            const char *dname,
                                            int omitSymLinks)
{
    char *d = __PHYSFS_platformCvtToDependent((char *)(h->opaque),dname,NULL);
    LinkedStringList *retval;

    BAIL_IF_MACRO(d == NULL, NULL, NULL);
    retval = __PHYSFS_platformEnumerateFiles(d, omitSymLinks);
    free(d);
    return(retval);
} /* DIR_enumerateFiles */
Esempio n. 10
0
File: dir.c Progetto: leonlee/tome
static PHYSFS_sint64 DIR_getLastModTime(dvoid *opaque,
                                        const char *name,
                                        int *fileExists)
{
    char *d = __PHYSFS_platformCvtToDependent((char *) opaque, name, NULL);
    PHYSFS_sint64 retval = -1;

    BAIL_IF_MACRO(d == NULL, NULL, 0);
    *fileExists = __PHYSFS_platformExists(d);
    if (*fileExists)
        retval = __PHYSFS_platformGetLastModTime(d);
    allocator.Free(d);
    return(retval);
} /* DIR_getLastModTime */
Esempio n. 11
0
File: dir.c Progetto: UIKit0/paragui
static PHYSFS_sint64 DIR_getLastModTime(DirHandle *h,
                                        const char *name,
                                        int *fileExists)
{
    char *d = __PHYSFS_platformCvtToDependent((char *)(h->opaque), name, NULL);
    PHYSFS_sint64 retval = -1;

    BAIL_IF_MACRO(d == NULL, NULL, 0);
    *fileExists = __PHYSFS_platformExists(d);
    if (*fileExists)
        retval = __PHYSFS_platformGetLastModTime(d);
    free(d);
    return(retval);
} /* DIR_getLastModTime */
Esempio n. 12
0
File: dir.c Progetto: UIKit0/paragui
static FileHandle *doOpen(DirHandle *h, const char *name,
                          void *(*openFunc)(const char *filename),
                          int *fileExists, const FileFunctions *fileFuncs)
{
    char *f = __PHYSFS_platformCvtToDependent((char *)(h->opaque), name, NULL);
    void *rc;
    FileHandle *retval;

    BAIL_IF_MACRO(f == NULL, NULL, NULL);

    if (fileExists != NULL)
    {
        *fileExists = __PHYSFS_platformExists(f);
        if (!(*fileExists))
        {
            free(f);
            return(NULL);
        } /* if */
    } /* if */

    retval = (FileHandle *) malloc(sizeof (FileHandle));
    if (!retval)
    {
        free(f);
        BAIL_MACRO(ERR_OUT_OF_MEMORY, NULL);
    } /* if */

    rc = openFunc(f);
    free(f);

    if (!rc)
    {
        free(retval);
        return(NULL);
    } /* if */

    retval->opaque = (void *) rc;
    retval->dirHandle = h;
    retval->funcs = fileFuncs;

    return(retval);
} /* doOpen */
Esempio n. 13
0
File: dir.c Progetto: leonlee/tome
static fvoid *doOpen(dvoid *opaque, const char *name,
                     void *(*openFunc)(const char *filename),
                     int *fileExists)
{
    char *f = __PHYSFS_platformCvtToDependent((char *) opaque, name, NULL);
    void *rc = NULL;

    BAIL_IF_MACRO(f == NULL, NULL, NULL);

    if (fileExists != NULL)
    {
        *fileExists = __PHYSFS_platformExists(f);
        if (!(*fileExists))
        {
            allocator.Free(f);
            return(NULL);
        } /* if */
    } /* if */

    rc = openFunc(f);
    allocator.Free(f);

    return((fvoid *) rc);
} /* doOpen */