diff options
| author | Daniel T. Borelli | 2015-05-06 20:37:25 -0300 |
|---|---|---|
| committer | Daniel T. Borelli | 2015-05-06 20:37:25 -0300 |
| commit | 93095014fd87f1a33bdeaeb1f05eaab9342320bc (patch) | |
| tree | 9ddc5c058e2fce79457adfce9e2a76a6f15f96f9 /main/main.cpp | |
| parent | 7156aff16041ea56ff1f3aea2a622c130bcca7a9 (diff) | |
| download | godot-93095014fd87f1a33bdeaeb1f05eaab9342320bc.tar.gz godot-93095014fd87f1a33bdeaeb1f05eaab9342320bc.tar.zst godot-93095014fd87f1a33bdeaeb1f05eaab9342320bc.zip | |
Fix segment violation MINIZIP_ENABLED
Diffstat (limited to 'main/main.cpp')
| -rw-r--r-- | main/main.cpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/main/main.cpp b/main/main.cpp index aa4a4b891..1469ce461 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -251,7 +251,14 @@ Error Main::setup(const char *execpath,int argc, char *argv[],bool p_second_phas packed_data = memnew(PackedData); #ifdef MINIZIP_ENABLED + + //XXX: always get_singleton() == 0x0 zip_packed_data = ZipArchive::get_singleton(); + //TODO: remove this temporary fix + if (!zip_packed_data) { + zip_packed_data = memnew(ZipArchive); + } + packed_data->add_pack_source(zip_packed_data); #endif @@ -748,10 +755,12 @@ Error Main::setup(const char *execpath,int argc, char *argv[],bool p_second_phas if (file_access_network_client) memdelete(file_access_network_client); -#ifdef MINIZIP_ENABLED - if (zip_packed_data) - memdelete( zip_packed_data ); -#endif +// Note 1: *zip_packed_data live into *packed_data +// Note 2: PackedData::~PackedData destroy this. +//#ifdef MINIZIP_ENABLED +// if (zip_packed_data) +// memdelete( zip_packed_data ); +//#endif unregister_core_types(); |
