Browse Source

Fix memory leak in ResourceFormatSaverBinary::save

(cherry picked from commit b244ab4acc85ae89dc5f64bc528559db408b890c)
qarmin 6 năm trước cách đây
mục cha
commit
7823552d9e

+ 3 - 0
core/io/resource_format_binary.cpp

@@ -1801,6 +1801,7 @@ Error ResourceFormatSaverBinaryInstance::save(const String &p_path, const RES &p
 
 
 	if (f->get_error() != OK && f->get_error() != ERR_FILE_EOF) {
 	if (f->get_error() != OK && f->get_error() != ERR_FILE_EOF) {
 		f->close();
 		f->close();
+		memdelete(f);
 		return ERR_CANT_CREATE;
 		return ERR_CANT_CREATE;
 	}
 	}
 
 
@@ -1953,10 +1954,12 @@ Error ResourceFormatSaverBinaryInstance::save(const String &p_path, const RES &p
 
 
 	if (f->get_error() != OK && f->get_error() != ERR_FILE_EOF) {
 	if (f->get_error() != OK && f->get_error() != ERR_FILE_EOF) {
 		f->close();
 		f->close();
+		memdelete(f);
 		return ERR_CANT_CREATE;
 		return ERR_CANT_CREATE;
 	}
 	}
 
 
 	f->close();
 	f->close();
+	memdelete(f);
 
 
 	return OK;
 	return OK;
 }
 }