1
0
mirror of https://github.com/godotengine/godot.git synced 2026-01-04 19:21:46 +00:00

Merge pull request #26657 from marxin/fix-25641-ubsan-negative-value

Fix #25641 by not shifting a negative value.
This commit is contained in:
Rémi Verschelde
2019-03-05 23:02:59 +01:00
committed by GitHub

View File

@@ -90,7 +90,8 @@ public:
}
CanvasKey(const RID &p_canvas, int p_layer, int p_sublayer) {
canvas = p_canvas;
stacking = ((int64_t)p_layer << 32) + p_sublayer;
int64_t sign = p_layer < 0 ? -1 : 1;
stacking = sign * (((int64_t)ABS(p_layer)) << 32) + p_sublayer;
}
int get_layer() const { return stacking >> 32; }
};