diff --git a/lib/plucky/query.rb b/lib/plucky/query.rb
index <HASH>..<HASH> 100644
--- a/lib/plucky/query.rb
+++ b/lib/plucky/query.rb
@@ -63,7 +63,7 @@ module Plucky
     end
 
     def reverse
-      self[:sort].map! { |s| [s[0], -s[1]] }
+      self[:sort].map! { |s| [s[0], -s[1]] } unless self[:sort].nil?
       self
     end
 
diff --git a/test/plucky/test_query.rb b/test/plucky/test_query.rb
index <HASH>..<HASH> 100644
--- a/test/plucky/test_query.rb
+++ b/test/plucky/test_query.rb
@@ -230,6 +230,12 @@ class QueryTest < Test::Unit::TestCase
         Query.new(@collection).sort(:age).reverse.all.should == [@steve, @john, @chris]
       end
 
+      should "not error if no sort provided" do
+        assert_nothing_raised do
+          Query.new(@collection).reverse
+        end
+      end
+
       should "reverse the sort order" do
         query = Query.new(@collection, :order => 'foo asc, bar desc')
         query.reverse.options[:sort].should == [['foo', -1], ['bar', 1]]
Do nothing if no sort provided.