commit fdb607253f4da4614530a999abd57811fb033529
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Wed Aug 12 10:53:37 2020 +0100

    Correct an issue shown by Crashlytics: sometimes it would crash in the library in InternalOutputSurface.setAsOutput() when trying to 'read from null array' mFBOH[].

diff --git a/src/main/java/org/distorted/library/main/InternalOutputSurface.java b/src/main/java/org/distorted/library/main/InternalOutputSurface.java
index 9297ce2..1dede9d 100644
--- a/src/main/java/org/distorted/library/main/InternalOutputSurface.java
+++ b/src/main/java/org/distorted/library/main/InternalOutputSurface.java
@@ -98,6 +98,12 @@ public abstract class InternalOutputSurface extends InternalSurface implements I
 
     mTmpFBO = fbo;
 
+    mFBOH = new int[10];  // Crashlytics shows the library occasionally crashing in setAsOutput()
+    mTime = new long[10]; // when trying to read from 'null array' mFBOH. Probably sometimes a
+                          // a Framebuffer gets created in the wrong moment, just after we did a
+                          // round of create(), but before we start rendering.
+                          // Create an empty FBO and Time here so that setAsOutput() is always safe to call.
+
     allocateStuffDependantOnNumFBOS();
     createProjection();
     }
