diff --git a/samples/LunarLander/res/layout/lunar_layout.xml b/samples/LunarLander/res/layout/lunar_layout.xml
index f1a8990..bac8188 100644
--- a/samples/LunarLander/res/layout/lunar_layout.xml
+++ b/samples/LunarLander/res/layout/lunar_layout.xml
@@ -15,21 +15,21 @@
 -->
 
 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent">
     
     <com.example.android.lunarlander.LunarView
       android:id="@+id/lunar"
-      android:layout_width="match_parent"
-      android:layout_height="match_parent"/>
+      android:layout_width="fill_parent"
+      android:layout_height="fill_parent"/>
     
     <RelativeLayout
-        android:layout_width="match_parent"
-        android:layout_height="match_parent" >
+        android:layout_width="fill_parent"
+        android:layout_height="fill_parent" >
         <TextView
           android:id="@+id/text"
-		  android:text="@string/lunar_layout_text_text"
-		  android:visibility="visible"
+          android:text="@string/lunar_layout_text_text"
+          android:visibility="visible"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_centerInParent="true"
diff --git a/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java b/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java
index 15c5923..03faee9 100644
--- a/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java
+++ b/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java
@@ -149,8 +149,8 @@
      */
     @Override
     protected void onPause() {
-        super.onPause();
         mLunarView.getThread().pause(); // pause game when Activity pauses
+        super.onPause();
     }
 
     /**
diff --git a/samples/LunarLander/src/com/example/android/lunarlander/LunarView.java b/samples/LunarLander/src/com/example/android/lunarlander/LunarView.java
index 2a46147..81e0470 100644
--- a/samples/LunarLander/src/com/example/android/lunarlander/LunarView.java
+++ b/samples/LunarLander/src/com/example/android/lunarlander/LunarView.java
@@ -196,6 +196,8 @@
         /** Indicate whether the surface has been created & is ready to draw */
         private boolean mRun = false;
 
+        private final Object mRunLock = new Object();
+
         /** Scratch rect object. */
         private RectF mScratchRect;
 
@@ -356,7 +358,13 @@
                     c = mSurfaceHolder.lockCanvas(null);
                     synchronized (mSurfaceHolder) {
                         if (mMode == STATE_RUNNING) updatePhysics();
-                        doDraw(c);
+                        // Critical section. Do not allow mRun to be set false until
+                        // we are sure all canvas draw operations are complete.
+                        //
+                        // If mRun has been toggled false, inhibit canvas operations.
+                        synchronized (mRunLock) {
+                            if (mRun) doDraw(c);
+                        }
                     }
                 } finally {
                     // do this in a finally so that if an exception is thrown
@@ -427,7 +435,11 @@
          * @param b true to run, false to shut down
          */
         public void setRunning(boolean b) {
-            mRun = b;
+            // Do not allow mRun to be modified while any canvas operations
+            // are potentially in-flight. See doDraw().
+            synchronized (mRunLock) {
+                mRun = b;
+            }
         }
 
         /**
