Example #1
0
MOBJ_OBJECTS *mobj_parse(const char *file_name)
{
    MOBJ_OBJECTS *objects = _mobj_parse(file_name);

    /* if failed, try backup file */
    if (!objects) {
        int   len    = strlen(file_name);
        char *backup = malloc(len + 8);

        strcpy(backup, file_name);
        strcpy(backup + len - 16, "BACKUP/MovieObject.bdmv");

        objects = _mobj_parse(backup);

        X_FREE(backup);
    }

    return objects;
}
Example #2
0
static MOBJ_OBJECTS *_mobj_get(BD_DISC *disc, const char *path)
{
    BD_FILE_H    *fp;
    MOBJ_OBJECTS *objects;

    fp = disc_open_path(disc, path);
    if (!fp) {
        return NULL;
    }

    objects = _mobj_parse(fp);
    file_close(fp);
    return objects;
}
Example #3
0
MOBJ_OBJECTS *mobj_parse(const char *file_name)
{
    BD_FILE_H    *fp;
    MOBJ_OBJECTS *objects;

    fp = file_open(file_name, "rb");
    if (!fp) {
        BD_DEBUG(DBG_NAV | DBG_CRIT, "error opening %s\n", file_name);
        return NULL;
    }

    objects = _mobj_parse(fp);
    file_close(fp);
    return objects;
}