Index: mollom.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/mollom/mollom.module,v
retrieving revision 1.67
diff -u -p -r1.67 mollom.module
--- mollom.module	16 Aug 2010 02:26:08 -0000	1.67
+++ mollom.module	26 Aug 2010 11:18:51 -0000
@@ -1253,7 +1253,8 @@ function mollom_validate_analysis(&$form
   $result = mollom('mollom.checkContent', $data);
 
   // Trigger global fallback behavior if there is no result.
-  if (!isset($result['session_id']) || !isset($result['spam'])) {
+  // @todo Isn't mollom() invoking _mollom_fallback() already?
+  if (!isset($result['session_id'])) {
     return _mollom_fallback();
   }
 
Index: tests/mollom.test
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/mollom/tests/mollom.test,v
retrieving revision 1.51
diff -u -p -r1.51 mollom.test
--- tests/mollom.test	10 Aug 2010 19:33:51 -0000	1.51
+++ tests/mollom.test	26 Aug 2010 12:26:01 -0000
@@ -881,6 +881,16 @@ class MollomResponseTestCase extends Mol
     $this->assertTrue(!isset($result['quality']), 'quality not returned.');
     $this->assertSame('profanity', $result['profanity'], 1);
     $session_id = $this->assertSessionID($result['session_id']);
+
+    // Pass arbitrary string to profanity checking.
+    $data['post_body'] = $this->randomString(12);
+    $data['session_id'] = $session_id;
+    $result = mollom('mollom.checkContent', $data);
+    $this->assertMollomWatchdogMessages();
+    $this->assertTrue(!isset($result['spam']), 'spam not returned.');
+    $this->assertTrue(!isset($result['quality']), 'quality not returned.');
+    $this->assertSame('profanity', $result['profanity'], 0);
+    $session_id = $this->assertSessionID($result['session_id']);
   }
 
   /**
@@ -1412,10 +1422,19 @@ class MollomProfanityTestCase extends Mo
     $this->setProtection('mollom_test_form', MOLLOM_MODE_ANALYSIS, NULL, $edit_config);
     $this->drupalLogout();
 
-    // Assert that the profanity filter now blocks this content.
+    // Verify that the profanity filter now blocks this content.
     $this->drupalPost('mollom-test/form', $edit, 'Submit');
     $this->assertNoText('Successful form submission.');
     $this->assertText($this->profanity_message);
+
+    // Verify that we are able to post after removing profanity, as the error
+    // message suggests.
+    // @todo Doesn't really make sense in testing mode, and even more so, when
+    //   posting to the local fake server.
+    $edit['body'] = 'This is a post just for unsure Joomla lovers.';
+    $this->drupalPost('mollom-test/form', $edit, 'Submit');
+    $this->assertText('Successful form submission.');
+    $this->assertNoText($this->profanity_message);
   }
 }
 
