diff --git a/src/Form/RevisionOverviewForm.php b/src/Form/RevisionOverviewForm.php
index 8ce2a25..67f8ce8 100755
--- a/src/Form/RevisionOverviewForm.php
+++ b/src/Form/RevisionOverviewForm.php
@@ -107,6 +107,8 @@ class RevisionOverviewForm extends FormBase {
     $account = $this->currentUser;
     $node_storage = $this->entityManager->getStorage('node');
     $type = $node->getType();
+    $vids = array_reverse($node_storage->revisionIds($node));
+    $revision_count = count($vids);
 
     $build = array(
       '#title' => $this->t('Revisions for %title', array('%title' => $node->label())),
@@ -118,11 +120,17 @@ class RevisionOverviewForm extends FormBase {
 
     $table_header = array(
       'revision' => $this->t('Revision'),
-      'select_column_one' => '',
-      'select_column_two' => '',
       'operations' => $this->t('Operations'),
     );
 
+    // Allow comparisons only if there are 2 or more revisions.
+    if ($revision_count > 1) {
+      $table_header += array(
+        'select_column_one' => '',
+        'select_column_two' => '',
+      );
+    }
+
     $rev_revert_perm = $account->hasPermission("revert $type revisions") ||
       $account->hasPermission('revert all revisions') ||
       $account->hasPermission('administer nodes');
@@ -142,7 +150,6 @@ class RevisionOverviewForm extends FormBase {
     $build['node_revisions_table']['#attached']['library'][] = 'diff/diff.general';
     $build['node_revisions_table']['#attached']['drupalSettings']['diffRevisionRadios'] = $this->config->get('general_settings.radio_behavior');
 
-    $vids = array_reverse($node_storage->revisionIds($node));
     // Add rows to the table.
     foreach ($vids as $vid) {
       if ($revision = $node_storage->loadRevision($vid)) {
@@ -172,20 +179,6 @@ class RevisionOverviewForm extends FormBase {
             'revision' => array(
               '#markup' => $date_username_markup . $revision_log,
             ),
-            'select_column_one' => array(
-              '#type' => 'radio',
-              '#title_display' => 'invisible',
-              '#name' => 'radios_left',
-              '#return_value' => $vid,
-              '#default_value' => FALSE,
-            ),
-            'select_column_two' => array(
-              '#type' => 'radio',
-              '#title_display' => 'invisible',
-              '#name' => 'radios_right',
-              '#default_value' => $vid,
-              '#return_value' => $vid,
-            ),
             'operations' => array(
               '#markup' => String::placeholder($this->t('current revision')),
             ),
@@ -193,6 +186,26 @@ class RevisionOverviewForm extends FormBase {
               'class' => array('revision-current'),
             ),
           );
+
+          // Allow comparisons only if there are 2 or more revisions.
+          if ($revision_count > 1) {
+            $row += array(
+              'select_column_one' => array(
+                '#type' => 'radio',
+                '#title_display' => 'invisible',
+                '#name' => 'radios_left',
+                '#return_value' => $vid,
+                '#default_value' => FALSE,
+              ),
+              'select_column_two' => array(
+                '#type' => 'radio',
+                '#title_display' => 'invisible',
+                '#name' => 'radios_right',
+                '#default_value' => $vid,
+                '#return_value' => $vid,
+              ),
+            );
+          }
         }
         else {
           $route_params = array(
@@ -219,6 +232,9 @@ class RevisionOverviewForm extends FormBase {
             )
           );
 
+          // Here we don't have to deal with 'only one revision' case because
+          // if there's only one revision it will also be the default one,
+          // entering on the first branch of this if else statement.
           $row = array(
             'revision' => array(
               '#markup' => $date_username_markup . $revision_log,
@@ -248,15 +264,18 @@ class RevisionOverviewForm extends FormBase {
       }
     }
 
-    $build['submit'] = array(
-      '#type' => 'submit',
-      '#value' => t('Compare'),
-      '#attributes' => array(
-        'class' => array(
-          'diff-button',
+    // Allow comparisons only if there are 2 or more revisions.
+    if ($revision_count > 1) {
+      $build['submit'] = array(
+        '#type' => 'submit',
+        '#value' => t('Compare'),
+        '#attributes' => array(
+          'class' => array(
+            'diff-button',
+          ),
         ),
-      ),
-    );
+      );
+    }
 
     return $build;
   }
diff --git a/src/Tests/DiffRevisionTest.php b/src/Tests/DiffRevisionTest.php
index 4bec952..d963d7f 100644
--- a/src/Tests/DiffRevisionTest.php
+++ b/src/Tests/DiffRevisionTest.php
@@ -138,6 +138,23 @@ class DiffRevisionTest extends WebTestBase {
     // Make sure two revisions are available.
     $rows = $this->xpath('//tbody/tr');
     $this->assertEqual(count($rows), 2);
+
+    // Delete one revision so that we are left with only 1 revision.
+    $this->clickLink(t('Delete'), 1);
+    $this->drupalPostForm(NULL, NULL, t('Delete'));
+    $this->assertText(t('Revision from @date of Article @title has been deleted.', array(
+        '@date' => date('D, m/d/Y - H:i', $created),
+        '@title' => $title
+    )));
+
+    // Make sure we only have 1 revision now.
+    $rows = $this->xpath('//tbody/tr');
+    $this->assertEqual(count($rows), 1);
+
+    // Assert that there are no radio buttons for revision selection.
+    $this->assertNoFieldByXPath('//input[@type="radio"]');
+    // Assert that there is no submit button.
+    $this->assertNoFieldByXPath('//input[@type="submit"]');
   }
 
 }
