summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorJeffery Myers <[email protected]>2021-01-06 04:21:58 -0800
committerGitHub <[email protected]>2021-01-06 13:21:58 +0100
commit5d4aada52649e0a43ba6eb446b205a68cd0831f6 (patch)
tree176a55225084a922ce3300fa64c12b967e213cae /src
parent551597d5793532b19ed71808803a0d6a6e1178b0 (diff)
downloadraylib-5d4aada52649e0a43ba6eb446b205a68cd0831f6.tar.gz
raylib-5d4aada52649e0a43ba6eb446b205a68cd0831f6.zip
Don't create an ortho matrix when the viewport is 0 in any axis. (#1504)
* Don't create an ortho matrix when the viewport is 0 in any axis. Not all compilers divide by 0 and return inf, some segfault. The matrix is not used by anything when minimized, so it just needs to not be called. * Better fix that always ensures the rlgl matrix is always valid * Better fix that always ensures the rlgl matrix is always valid
Diffstat (limited to 'src')
-rw-r--r--src/rlgl.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/rlgl.h b/src/rlgl.h
index 3d327a6f..bc851668 100644
--- a/src/rlgl.h
+++ b/src/rlgl.h
@@ -1100,6 +1100,12 @@ void rlFrustum(double left, double right, double bottom, double top, double znea
// Multiply the current matrix by an orthographic matrix generated by parameters
void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar)
{
+ if (right - left <= 0 || bottom - top <= 0)
+ {
+ *RLGL.State.currentMatrix = MatrixIdentity();
+ return;
+ }
+
Matrix matOrtho = MatrixOrtho(left, right, bottom, top, znear, zfar);
*RLGL.State.currentMatrix = MatrixMultiply(*RLGL.State.currentMatrix, matOrtho);