Index: date/date_api.module
===================================================================
--- date/date_api.module	(revision 63)
+++ date/date_api.module	(working copy)
@@ -2435,7 +2435,13 @@
 function date_range_years($string, $date = NULL) {
   $this_year = date_format(date_now(), 'Y');
   list($min_year, $max_year) = explode(':', $string);
-  
+  // check for backwardsorting if date_range is -18:-99 for example
+  if ($min_year > $max_year) {
+        $tmp_year = $min_year;
+        $min_year = $max_year;
+        $max_year = $tmp_year;
+        unset($tmp_year);
+  }
   // Valid patterns would be -5:+5, 0:+1, 2008:2010.
   $plus_pattern = '@[\+|\-][0-9]{1,4}@';
   $year_pattern = '@[0-9]{4}@';
@@ -2492,4 +2498,4 @@
  */
 function date_api_date_api_tables() {
   return array('node', 'comment', 'users');
-}
\ No newline at end of file
+}
