diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-12-19 03:50:21 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-12-19 03:50:21 +0300 |
commit | d9de6fca6cda2a7ddeeb936692b529182a14dec9 (patch) | |
tree | 63b5384fe03297bdfb40205c280b36ec043d0ed1 /source/gameengine | |
parent | ea81c58429ecd51752e2abb7d756ef1d09514b84 (diff) |
2.5: Change blenloader module to use the Report system for reporting errors.
Diffstat (limited to 'source/gameengine')
-rw-r--r-- | source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp | 18 | ||||
-rw-r--r-- | source/gameengine/GamePlayer/common/GPC_Engine.cpp | 19 | ||||
-rw-r--r-- | source/gameengine/GamePlayer/ghost/GPG_ghost.cpp | 25 |
3 files changed, 40 insertions, 22 deletions
diff --git a/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp b/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp index 0dab583567d..6c2e110db76 100644 --- a/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp +++ b/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp @@ -70,6 +70,7 @@ #include "DNA_view3d_types.h" #include "DNA_screen_types.h" #include "BKE_global.h" +#include "BKE_report.h" #include "BKE_utildefines.h" //XXX #include "BIF_screen.h" //XXX #include "BIF_scrarea.h" @@ -91,12 +92,21 @@ void update_for_newframe(); } #endif -static BlendFileData *load_game_data(char *filename) { - BlendReadError error; - BlendFileData *bfd= BLO_read_from_file(filename, &error); +static BlendFileData *load_game_data(char *filename) +{ + ReportList reports; + BlendFileData *bfd; + + BKE_reports_init(&reports, RPT_STORE); + bfd= BLO_read_from_file(filename, &reports); + if (!bfd) { - printf("Loading %s failed: %s\n", filename, BLO_bre_as_string(error)); + printf("Loading %s failed: ", filename); + BKE_reports_print(&reports, RPT_ERROR); } + + BKE_reports_clear(&reports); + return bfd; } diff --git a/source/gameengine/GamePlayer/common/GPC_Engine.cpp b/source/gameengine/GamePlayer/common/GPC_Engine.cpp index 868dddb901c..bb84b5939e1 100644 --- a/source/gameengine/GamePlayer/common/GPC_Engine.cpp +++ b/source/gameengine/GamePlayer/common/GPC_Engine.cpp @@ -39,6 +39,7 @@ #include "BKE_blender.h" // initglobals() #include "BKE_global.h" // Global G +#include "BKE_report.h" #include "DNA_scene_types.h" #include "DNA_camera_types.h" // Camera #include "DNA_object_types.h" // Object @@ -135,15 +136,19 @@ GPC_Engine::~GPC_Engine() bool GPC_Engine::Start(char *filename) { - BlendReadError error; - BlendFileData *bfd= BLO_read_from_file(filename, &error); + ReportList reports; + BlendFileData *bfd; + + BKE_reports_init(&reports, RPT_STORE); + bfd= BLO_read_from_file(filename, &reports); + BKE_reports_clear(&reports); if (!bfd) { // XXX, deal with error here cout << "Unable to load: " << filename << endl; return false; } - + StartKetsji(); if(bfd->type == BLENFILETYPE_PUB) @@ -156,8 +161,12 @@ bool GPC_Engine::Start(char *filename) bool GPC_Engine::Start(unsigned char *blenderDataBuffer, unsigned int blenderDataBufferSize) { - BlendReadError error; - BlendFileData *bfd= BLO_read_from_memory(blenderDataBuffer, blenderDataBufferSize, &error); + ReportList reports; + BlendFileData *bfd; + + BKE_reports_init(&reports, RPT_STORE); + bfd= BLO_read_from_memory(blenderDataBuffer, blenderDataBufferSize, &reports); + BKE_reports_clear(&reports); if (!bfd) { // XXX, deal with error here diff --git a/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp b/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp index 0bf0317d8f2..8293cfeb36d 100644 --- a/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp +++ b/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp @@ -58,6 +58,7 @@ extern "C" #include "BKE_global.h" #include "BKE_icons.h" #include "BKE_node.h" +#include "BKE_report.h" #include "BLI_blenlib.h" #include "DNA_scene_types.h" #include "BLO_readfile.h" @@ -251,35 +252,33 @@ static void get_filename(int argc, char **argv, char *filename) #endif // !_APPLE } -static BlendFileData *load_game_data(char *progname, char *filename = NULL, char *relativename = NULL) { - BlendReadError error; +static BlendFileData *load_game_data(char *progname, char *filename = NULL, char *relativename = NULL) +{ + ReportList reports; BlendFileData *bfd = NULL; + + BKE_reports_init(&reports, RPT_STORE); /* try to load ourself, will only work if we are a runtime */ if (blo_is_a_runtime(progname)) { - bfd= blo_read_runtime(progname, &error); + bfd= blo_read_runtime(progname, &reports); 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); - bfd = NULL; - error = BRE_NOT_A_PUBFILE; + bfd= BLO_read_from_file(progname, &reports); } - */ if (!bfd && filename) { bfd = load_game_data(filename); if (!bfd) { - printf("Loading %s failed: %s\n", filename, BLO_bre_as_string(error)); + printf("Loading %s failed: ", filename); + BKE_reports_print(&reports, RPT_ERROR); } } + + BKE_reports_clear(&reports); return bfd; } |