summaryrefslogtreecommitdiffstats
path: root/servers/visual_server.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2019-11-01 22:12:47 +0100
committerGitHub <noreply@github.com>2019-11-01 22:12:47 +0100
commitaf4fd9de9c02052f3dc7330cd7cb6aa3f2107191 (patch)
treeeeac97cd39ee467902921a75fbdf3e5238716f4a /servers/visual_server.cpp
parent86fdb51e04a10362b502df95dd52286701aec521 (diff)
parent9ddb3265e1a6d2f9937ff6a27d04302d76c10431 (diff)
downloadredot-engine-af4fd9de9c02052f3dc7330cd7cb6aa3f2107191.tar.gz
Merge pull request #33238 from qarmin/other_fixes
Fix some crashes, overflows and using variables without values
Diffstat (limited to 'servers/visual_server.cpp')
-rw-r--r--servers/visual_server.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/servers/visual_server.cpp b/servers/visual_server.cpp
index 2e1f524362..4bab9b76ba 100644
--- a/servers/visual_server.cpp
+++ b/servers/visual_server.cpp
@@ -508,12 +508,11 @@ Error VisualServer::_surface_set_data(Array p_arrays, uint32_t p_format, uint32_
if (p_format & ARRAY_COMPRESS_TANGENT) {
for (int i = 0; i < p_vertex_array_len; i++) {
-
- uint8_t xyzw[4] = {
- (uint8_t)CLAMP(src[i * 4 + 0] * 127, -128, 127),
- (uint8_t)CLAMP(src[i * 4 + 1] * 127, -128, 127),
- (uint8_t)CLAMP(src[i * 4 + 2] * 127, -128, 127),
- (uint8_t)CLAMP(src[i * 4 + 3] * 127, -128, 127)
+ int8_t xyzw[4] = {
+ (int8_t)CLAMP(src[i * 4 + 0] * 127, -128, 127),
+ (int8_t)CLAMP(src[i * 4 + 1] * 127, -128, 127),
+ (int8_t)CLAMP(src[i * 4 + 2] * 127, -128, 127),
+ (int8_t)CLAMP(src[i * 4 + 3] * 127, -128, 127)
};
copymem(&vw[p_offsets[ai] + i * p_stride], xyzw, 4);