diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-08-28 09:01:16 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-08-28 09:01:16 +0400 |
commit | c73d5b939dd9dcc68ed1d1316115c2c7cded9cab (patch) | |
tree | cdeaad93da6e03e4f13166dbb3a4f893ce1aea0c /source/gameengine/Converter | |
parent | 81ea1e7fcb4a746e4ecd4349cc9fba1eb1dcec70 (diff) |
check for unlikely error when freeing a library blend file from the BGE.
Diffstat (limited to 'source/gameengine/Converter')
-rw-r--r-- | source/gameengine/Converter/KX_BlenderSceneConverter.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp index b04a0d24e78..dd21e7ef263 100644 --- a/source/gameengine/Converter/KX_BlenderSceneConverter.cpp +++ b/source/gameengine/Converter/KX_BlenderSceneConverter.cpp @@ -1083,7 +1083,7 @@ bool KX_BlenderSceneConverter::LinkBlendFile(BlendHandle *bpy_openlib, const cha * most are temp and NewRemoveObject frees m_map_gameobject_to_blender */ bool KX_BlenderSceneConverter::FreeBlendFile(struct Main *maggie) { - int maggie_index; + int maggie_index= -1; int i=0; if(maggie==NULL) @@ -1101,6 +1101,10 @@ bool KX_BlenderSceneConverter::FreeBlendFile(struct Main *maggie) i++; } + /* should never happen but just to be safe */ + if(maggie_index == -1) + return false; + m_DynamicMaggie.erase(m_DynamicMaggie.begin() + maggie_index); tag_main(maggie, 1); |