Codechange: [ContentInfo] Use a vector for dependencies instead of custom allocation
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
ContentInfo::ContentInfo()
|
||||
: /* Temporary... will be removed later in the PR. */
|
||||
type((ContentType)0), id((ContentID)0), filesize(0), filename(""), name(""), version(""),
|
||||
url(""), description(""), unique_id(0), md5sum(""), dependency_count(0), dependencies(nullptr),
|
||||
url(""), description(""), unique_id(0), md5sum(""),
|
||||
state((State)0), upgrade(false)
|
||||
{
|
||||
}
|
||||
@@ -32,7 +32,6 @@ ContentInfo::ContentInfo()
|
||||
/** Free everything allocated */
|
||||
ContentInfo::~ContentInfo()
|
||||
{
|
||||
free(this->dependencies);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -42,9 +41,8 @@ ContentInfo::~ContentInfo()
|
||||
void ContentInfo::TransferFrom(ContentInfo *other)
|
||||
{
|
||||
if (other != this) {
|
||||
free(this->dependencies);
|
||||
*this = *other;
|
||||
other->dependencies = nullptr;
|
||||
other->dependencies.clear();
|
||||
other->tags.clear();
|
||||
}
|
||||
}
|
||||
|
@@ -67,8 +67,7 @@ struct ContentInfo {
|
||||
char description[512]; ///< Description of the content
|
||||
uint32 unique_id; ///< Unique ID; either GRF ID or shortname
|
||||
byte md5sum[16]; ///< The MD5 checksum
|
||||
uint8 dependency_count; ///< Number of dependencies
|
||||
ContentID *dependencies; ///< Malloced array of dependencies (unique server side ids)
|
||||
std::vector<ContentID> dependencies; ///< The dependencies (unique server side ids)
|
||||
StringList tags; ///< Tags associated with the content
|
||||
State state; ///< Whether the content info is selected (for download)
|
||||
bool upgrade; ///< This item is an upgrade
|
||||
|
Reference in New Issue
Block a user