commit 1ef09d495bf95c05b1ca867b4bf824031088b80b
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Wed May 27 12:43:04 2020 +0100

    Report a Crashlytics non-fatal if we fail to compile some shaders.

diff --git a/src/main/AndroidManifest.xml b/src/main/AndroidManifest.xml
index f00a5ed5..a1f2b424 100644
--- a/src/main/AndroidManifest.xml
+++ b/src/main/AndroidManifest.xml
@@ -5,6 +5,7 @@
     <uses-feature android:name="android.hardware.faketouch" android:required="true" />
 
     <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
 
     <application
         android:allowBackup="true"
diff --git a/src/main/java/org/distorted/main/RubikRenderer.java b/src/main/java/org/distorted/main/RubikRenderer.java
index 3e49d1d8..6f27fc9e 100644
--- a/src/main/java/org/distorted/main/RubikRenderer.java
+++ b/src/main/java/org/distorted/main/RubikRenderer.java
@@ -106,9 +106,12 @@ public class RubikRenderer implements GLSurfaceView.Renderer
         else
           {
           FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
-          crashlytics.log("DistortedError: " +message );
-          crashlytics.log("GLversion"        +version );
-          crashlytics.log("GLSLrenderer"     +renderer);
+          crashlytics.setCustomKey("DistortedError", message );
+          crashlytics.setCustomKey("GLSL Version"  , shading );
+          crashlytics.setCustomKey("GLversion"     , version );
+          crashlytics.setCustomKey("GL Vendor "    , vendor  );
+          crashlytics.setCustomKey("GLSLrenderer"  , renderer);
+          crashlytics.recordException(ex);
           }
         }
       }
