Merge branch 'master' into jgrpp

# Conflicts:
#	src/fileio.cpp
#	src/group_gui.cpp
#	src/industry.h
#	src/lang/korean.txt
#	src/linkgraph/linkgraphjob.cpp
#	src/linkgraph/linkgraphjob.h
#	src/linkgraph/linkgraphschedule.cpp
#	src/linkgraph/linkgraphschedule.h
#	src/openttd.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/town_cmd.cpp
#	src/vehicle_gui.cpp
#	src/vehicle_gui_base.h
This commit is contained in:
Jonathan G Rennison
2021-01-30 18:27:25 +00:00
102 changed files with 1870 additions and 1765 deletions

View File

@@ -77,9 +77,9 @@ ScriptController::ScriptController(CompanyID company) :
ScriptController::~ScriptController()
{
for (LoadedLibraryList::iterator iter = this->loaded_library.begin(); iter != this->loaded_library.end(); iter++) {
free((*iter).second);
free((*iter).first);
for (const auto &item : this->loaded_library) {
free(item.second);
free(item.first);
}
this->loaded_library.clear();
@@ -116,11 +116,6 @@ ScriptController::~ScriptController()
Squirrel *engine = ScriptObject::GetActiveInstance()->engine;
HSQUIRRELVM vm = engine->GetVM();
/* Internally we store libraries as 'library.version' */
char library_name[1024];
seprintf(library_name, lastof(library_name), "%s.%d", library, version);
strtolower(library_name);
ScriptInfo *lib = ScriptObject::GetActiveInstance()->FindLibrary(library, version);
if (lib == nullptr) {
char error[1024];
@@ -128,15 +123,20 @@ ScriptController::~ScriptController()
throw sq_throwerror(vm, error);
}
/* Internally we store libraries as 'library.version' */
char library_name[1024];
seprintf(library_name, lastof(library_name), "%s.%d", library, version);
strtolower(library_name);
/* Get the current table/class we belong to */
HSQOBJECT parent;
sq_getstackobj(vm, 1, &parent);
char fake_class[1024];
LoadedLibraryList::iterator iter = controller->loaded_library.find(library_name);
if (iter != controller->loaded_library.end()) {
strecpy(fake_class, (*iter).second, lastof(fake_class));
LoadedLibraryList::iterator it = controller->loaded_library.find(library_name);
if (it != controller->loaded_library.end()) {
strecpy(fake_class, (*it).second, lastof(fake_class));
} else {
int next_number = ++controller->loaded_library_count;

View File

@@ -23,7 +23,6 @@
* script that matches to the specified version as close as possible. It tries
* (from first to last, stopping as soon as the attempt succeeds)
*
* - load the exact same version of the same script,
* - load the latest version of the same script that supports loading data from
* the saved version (the version of saved data must be equal or greater
* than ScriptInfo::MinVersionToLoad),