diff options
| author | Jeffery Myers <[email protected]> | 2021-01-06 04:21:58 -0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-01-06 13:21:58 +0100 |
| commit | 5d4aada52649e0a43ba6eb446b205a68cd0831f6 (patch) | |
| tree | 176a55225084a922ce3300fa64c12b967e213cae /src | |
| parent | 551597d5793532b19ed71808803a0d6a6e1178b0 (diff) | |
| download | raylib-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.h | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -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); |
