diff options
author | Kester Maddock <Christopher.Maddock.1@uni.massey.ac.nz> | 2004-04-29 14:51:02 +0400 |
---|---|---|
committer | Kester Maddock <Christopher.Maddock.1@uni.massey.ac.nz> | 2004-04-29 14:51:02 +0400 |
commit | d7e6a3dd47952fdd821b21f67d33c2ae5059f432 (patch) | |
tree | 10cc14652d1cff43897e9193a7f08290ad42e3b0 /source/gameengine/GamePlayer | |
parent | 3102c0dad9f07f138a5ad8db6c3e60af5b515005 (diff) |
Fix blenderplayer unable to load .blend files (only runtimes!)
Diffstat (limited to 'source/gameengine/GamePlayer')
-rw-r--r-- | source/gameengine/GamePlayer/ghost/GPG_ghost.cpp | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp b/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp index 897fb4f27cd..c55e572ccbd 100644 --- a/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp +++ b/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp @@ -174,24 +174,21 @@ char *get_filename(int argc, char **argv) { #endif // !_APPLE } -BlendFileData *load_game_data(char *progname, char *filename) { +static BlendFileData *load_game_data(char *progname, char *filename = NULL) { BlendReadError error; BlendFileData *bfd = NULL; /* try to load ourself, will only work if we are a runtime */ if (blo_is_a_runtime(progname)) { bfd= blo_read_runtime(progname, &error); - } - if (bfd) { - bfd->type= BLENFILETYPE_RUNTIME; - strcpy(bfd->main->name, progname); - } else { - if (filename) { - return load_game_data(filename, NULL); -// bfd= BLO_read_from_file(filename, &error); + if (bfd) { + bfd->type= BLENFILETYPE_RUNTIME; + strcpy(bfd->main->name, progname); } + } else { + bfd= BLO_read_from_file(progname, &error); } - + /* if (bfd && bfd->type == BLENFILETYPE_BLEND) { BLO_blendfiledata_free(bfd); @@ -200,8 +197,9 @@ BlendFileData *load_game_data(char *progname, char *filename) { } */ - if (!bfd) { - if (filename) { + if (!bfd && filename) { + bfd = load_game_data(filename); + if (!bfd) { printf("Loading %s failed: %s\n", filename, BLO_bre_as_string(error)); } } @@ -435,7 +433,7 @@ int main(int argc, char** argv) strcpy(basedpath, exitstring.Ptr()); BLI_convertstringcode(basedpath, pathname, 0); - bfd = load_game_data(NULL, basedpath); + bfd = load_game_data(basedpath); } else { |