You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Core: Sidestep GCC false-positives
(cherry picked from commit acdb8667b5)
Adds some more fixes for 4.5.
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
This commit is contained in:
committed by
Rémi Verschelde
parent
6b017abaa4
commit
36e2050eea
@@ -2350,6 +2350,10 @@ void Image::initialize_data(const char **p_xpm) {
|
||||
} break;
|
||||
case READING_PIXELS: {
|
||||
int y = line - colormap_size - 1;
|
||||
#if defined(__GNUC__) && !defined(__clang__)
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic warning "-Wstringop-overflow=0"
|
||||
#endif
|
||||
for (int x = 0; x < size_width; x++) {
|
||||
char pixelstr[6] = { 0, 0, 0, 0, 0, 0 };
|
||||
for (int i = 0; i < pixelchars; i++) {
|
||||
@@ -2364,6 +2368,9 @@ void Image::initialize_data(const char **p_xpm) {
|
||||
}
|
||||
_put_pixelb(x, y, pixel_size, data_write, pixel);
|
||||
}
|
||||
#if defined(__GNUC__) && !defined(__clang__)
|
||||
#pragma GCC diagnostic pop
|
||||
#endif
|
||||
|
||||
if (y == (size_height - 1)) {
|
||||
status = DONE;
|
||||
|
||||
@@ -1938,7 +1938,8 @@ void TileMapLayer::set_tile_data(TileMapLayer::DataFormat p_format, const Vector
|
||||
for (int i = 0; i < c; i += offset) {
|
||||
const uint8_t *ptr = (const uint8_t *)&r[i];
|
||||
uint8_t local[12];
|
||||
for (int j = 0; j < ((p_format >= TileMapLayer::FORMAT_2) ? 12 : 8); j++) {
|
||||
const int buffer_size = (p_format >= TileMapLayer::FORMAT_2) ? 12 : 8;
|
||||
for (int j = 0; j < buffer_size; j++) {
|
||||
local[j] = ptr[j];
|
||||
}
|
||||
|
||||
|
||||
@@ -157,6 +157,7 @@ Node *SceneState::instantiate(GenEditState p_edit_state) const {
|
||||
const NodeData *nd = &nodes[0];
|
||||
|
||||
Node **ret_nodes = (Node **)alloca(sizeof(Node *) * nc);
|
||||
ret_nodes[0] = nullptr; // Sidesteps "maybe uninitialized" false-positives on GCC.
|
||||
|
||||
bool gen_node_path_cache = p_edit_state != GEN_EDIT_STATE_DISABLED && node_path_cache.is_empty();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user