mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-10 08:00:05 +00:00
Codechange: replace memcpy when copying DParams
This commit is contained in:
parent
2aa48bfcb3
commit
fa8c50758b
@ -159,7 +159,7 @@ void SetDParamMaxDigits(size_t n, uint count, FontSize size)
|
|||||||
*/
|
*/
|
||||||
void CopyInDParam(const uint64 *src, int num)
|
void CopyInDParam(const uint64 *src, int num)
|
||||||
{
|
{
|
||||||
MemCpyT(_global_string_params.GetPointerToOffset(0), src, num);
|
for (int i = 0; i < num; i++) SetDParam(i, src[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -169,7 +169,7 @@ void CopyInDParam(const uint64 *src, int num)
|
|||||||
*/
|
*/
|
||||||
void CopyOutDParam(uint64 *dst, int num)
|
void CopyOutDParam(uint64 *dst, int num)
|
||||||
{
|
{
|
||||||
MemCpyT(dst, _global_string_params.GetPointerToOffset(0), num);
|
for (int i = 0; i < num; i++) dst[i] = GetDParam(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -185,13 +185,13 @@ void CopyOutDParam(uint64 *dst, const char **strings, StringID string, int num)
|
|||||||
/* Just get the string to extract the type information. */
|
/* Just get the string to extract the type information. */
|
||||||
GetString(string);
|
GetString(string);
|
||||||
|
|
||||||
MemCpyT(dst, _global_string_params.GetPointerToOffset(0), num);
|
|
||||||
for (int i = 0; i < num; i++) {
|
for (int i = 0; i < num; i++) {
|
||||||
if (_global_string_params.GetTypeAtOffset(i) == SCC_RAW_STRING_POINTER) {
|
if (_global_string_params.GetTypeAtOffset(i) == SCC_RAW_STRING_POINTER) {
|
||||||
strings[i] = stredup((const char *)(size_t)_global_string_params.GetParam(i));
|
strings[i] = stredup((const char *)(size_t)_global_string_params.GetParam(i));
|
||||||
dst[i] = (size_t)strings[i];
|
dst[i] = (size_t)strings[i];
|
||||||
} else {
|
} else {
|
||||||
strings[i] = nullptr;
|
strings[i] = nullptr;
|
||||||
|
dst[i] = _global_string_params.GetParam(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -123,13 +123,6 @@ public:
|
|||||||
return this->num_param - this->offset;
|
return this->num_param - this->offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Get a pointer to a specific element in the data array. */
|
|
||||||
uint64 *GetPointerToOffset(size_t offset) const
|
|
||||||
{
|
|
||||||
assert(offset < this->num_param);
|
|
||||||
return &this->data[offset];
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Get the type of a specific element. */
|
/** Get the type of a specific element. */
|
||||||
WChar GetTypeAtOffset(size_t offset) const
|
WChar GetTypeAtOffset(size_t offset) const
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user