mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-09 23:50:25 +00:00
Codechange: prevent suspicious pointer scaling
This commit is contained in:
parent
170f37d07f
commit
f7af9a299a
2
src/3rdparty/squirrel/squirrel/sqstate.cpp
vendored
2
src/3rdparty/squirrel/squirrel/sqstate.cpp
vendored
@ -513,7 +513,7 @@ void RefTable::AllocNodes(SQUnsignedInteger size)
|
||||
bucks[n] = nullptr;
|
||||
temp->refs = 0;
|
||||
new (&temp->obj) SQObjectPtr;
|
||||
temp->next = temp+1;
|
||||
temp->next = &temp[1];
|
||||
temp++;
|
||||
}
|
||||
bucks[n] = nullptr;
|
||||
|
@ -383,7 +383,7 @@ void Blitter_32bppAnim::CopyFromBuffer(void *video, const void *src, int width,
|
||||
dst += _screen.pitch;
|
||||
/* Copy back the anim-buffer */
|
||||
memcpy(anim_line, usrc, width * sizeof(uint16));
|
||||
usrc = (const uint32 *)((const uint16 *)usrc + width);
|
||||
usrc = (const uint32 *)&((const uint16 *)usrc)[width];
|
||||
anim_line += this->anim_buf_pitch;
|
||||
|
||||
/* Okay, it is *very* likely that the image we stored is using
|
||||
@ -422,7 +422,7 @@ void Blitter_32bppAnim::CopyToBuffer(const void *video, void *dst, int width, in
|
||||
udst += width;
|
||||
/* Copy the anim-buffer */
|
||||
memcpy(udst, anim_line, width * sizeof(uint16));
|
||||
udst = (uint32 *)((uint16 *)udst + width);
|
||||
udst = (uint32 *)&((uint16 *)udst)[width];
|
||||
anim_line += this->anim_buf_pitch;
|
||||
}
|
||||
}
|
||||
|
@ -316,8 +316,9 @@ template <bool Tpal_to_rgb> Sprite *Blitter_32bppOptimized::EncodeInternal(const
|
||||
const SpriteLoader::CommonPixel *src = (const SpriteLoader::CommonPixel *)src_orig->data;
|
||||
|
||||
for (uint y = src_orig->height; y > 0; y--) {
|
||||
Colour *dst_px = (Colour *)(dst_px_ln + 1);
|
||||
uint16 *dst_n = (uint16 *)(dst_n_ln + 1);
|
||||
/* Index 0 of dst_px and dst_n is left as space to save the length of the row to be filled later. */
|
||||
Colour *dst_px = (Colour *)&dst_px_ln[1];
|
||||
uint16 *dst_n = (uint16 *)&dst_n_ln[1];
|
||||
|
||||
uint16 *dst_len = dst_n++;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user