commit d13df23d59a64664dbd01da9af3f833d8677606f
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Mon Sep 27 16:02:53 2021 +0200

    Important bugfix.

diff --git a/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java b/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java
index 6723fed3..909da589 100644
--- a/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java
+++ b/src/main/java/org/distorted/effects/scramble/ScrambleEffect.java
@@ -266,7 +266,11 @@ public abstract class ScrambleEffect extends BaseEffect implements EffectListene
     mObject    = cont.getObject();
     mController= cont;
 
-    mController.solve();
+    // NOT mController.solve() !! This would be a very subtle bug. We need to do this immediately,
+    // because here we are already inside the mController.preRender() function (doing 'scrambleObjectNow')
+    // and doing a delayed 'solve()' here would mean we'd be sometimes first doing the first rotation,
+    // and only after it - the solve.
+    mObject.solve();
 
     mBasicAngle = mObject.getBasicAngle();
 
diff --git a/src/main/java/org/distorted/objects/TwistyObject.java b/src/main/java/org/distorted/objects/TwistyObject.java
index 0d2cb7db..d9579679 100644
--- a/src/main/java/org/distorted/objects/TwistyObject.java
+++ b/src/main/java/org/distorted/objects/TwistyObject.java
@@ -1134,7 +1134,7 @@ public abstract class TwistyObject extends DistortedNode
       mRotationAngle.resetToBeginning();
       mRotationAngle.add(new Static1D(0));
       mRotationAngle.add(new Static1D(angle));
-      mRotateEffect.setMeshAssociation( mRotRowBitmap<<(axis* ObjectList.MAX_OBJECT_SIZE) , -1);
+      mRotateEffect.setMeshAssociation( mRotRowBitmap<<(axis*ObjectList.MAX_OBJECT_SIZE) , -1);
       mRotateEffect.notifyWhenFinished(listener);
 
       return mRotateEffect.getID();
