summaryrefslogtreecommitdiff
path: root/src/newgrf_config.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/newgrf_config.cpp')
-rw-r--r--src/newgrf_config.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/newgrf_config.cpp b/src/newgrf_config.cpp
index 2b268183f..6b7b8c377 100644
--- a/src/newgrf_config.cpp
+++ b/src/newgrf_config.cpp
@@ -82,7 +82,7 @@ GRFConfig::GRFConfig(const GRFConfig &config) :
this->name->AddRef();
this->info->AddRef();
this->url->AddRef();
- if (config.error != NULL) this->error = new GRFError(*config.error);
+ if (config.error != NULL) this->error = new GRFError(*config.error);
for (uint i = 0; i < config.param_info.Length(); i++) {
if (config.param_info[i] == NULL) {
*this->param_info.Append() = NULL;
@@ -108,6 +108,17 @@ GRFConfig::~GRFConfig()
}
/**
+ * Copy the parameter information from the \a src config.
+ * @param src Source config.
+ */
+void GRFConfig::CopyParams(const GRFConfig &src)
+{
+ this->num_params = src.num_params;
+ this->num_valid_params = src.num_valid_params;
+ MemCpyT<uint32>(this->param, src.param, lengthof(this->param));
+}
+
+/**
* Get the name of this grf. In case the name isn't known
* the filename is returned.
* @return The name of filename of this grf.