diff --git a/ResourceFactory.cpp b/ResourceFactory.cpp index cc9b9acf602877cddddbcb84c1336cbdcedfa0ca..c73ecee23857ad96ab82160f3687e71fb4e2af99 100644 --- a/ResourceFactory.cpp +++ b/ResourceFactory.cpp @@ -9,10 +9,12 @@ ResourceFactory::ResourceFactory() for(int i = 0; i < resourceCount; ++i) { // prepare temporary buffer + size_t resourceSize = c_ResourceIndex[i+1][1]; vector<unsigned char> buffer; + buffer.reserve(resourceSize); // extract resource data from storage container - for(size_t x = 0; x < c_ResourceIndex[i+1][1]; ++x) { + for(size_t x = 0; x < resourceSize; ++x) { // use offset and relative position to find the absolute position unsigned char byteValue = c_ResourceStorage[c_ResourceIndex[i+1][0] + x];