diff --git a/hgext/rebase.py b/hgext/rebase.py
index 7e6a3bae0e8efd90d34a528a1184623a47ae55ec_aGdleHQvcmViYXNlLnB5..204c7850c1583b2f1aa6e87f6f75953707f6e97c_aGdleHQvcmViYXNlLnB5 100644
--- a/hgext/rebase.py
+++ b/hgext/rebase.py
@@ -105,6 +105,8 @@
 
         clearstatus(repo)
         ui.status(_("rebase completed\n"))
+        if os.path.exists(repo.sjoin('undo')):
+            util.unlink(repo.sjoin('undo'))
         if skipped:
             ui.note(_("%d revisions have been skipped\n") % len(skipped))
     finally:
diff --git a/tests/test-rebase-parameters b/tests/test-rebase-parameters
index 7e6a3bae0e8efd90d34a528a1184623a47ae55ec_dGVzdHMvdGVzdC1yZWJhc2UtcGFyYW1ldGVycw==..204c7850c1583b2f1aa6e87f6f75953707f6e97c_dGVzdHMvdGVzdC1yZWJhc2UtcGFyYW1ldGVycw== 100755
--- a/tests/test-rebase-parameters
+++ b/tests/test-rebase-parameters
@@ -64,6 +64,9 @@
 hg update -C 5
 hg rebase 2>&1 | sed 's/\(saving bundle to \).*/\1/'
 
+echo "% Try to rollback after a rebase (fail)"
+hg rollback
+
 createrepo > /dev/null 2>&1
 echo
 echo "% Rebase with base == '.' => same as no arguments (from 3 onto 7)"
diff --git a/tests/test-rebase-parameters.out b/tests/test-rebase-parameters.out
index 7e6a3bae0e8efd90d34a528a1184623a47ae55ec_dGVzdHMvdGVzdC1yZWJhc2UtcGFyYW1ldGVycy5vdXQ=..204c7850c1583b2f1aa6e87f6f75953707f6e97c_dGVzdHMvdGVzdC1yZWJhc2UtcGFyYW1ldGVycy5vdXQ= 100644
--- a/tests/test-rebase-parameters.out
+++ b/tests/test-rebase-parameters.out
@@ -126,6 +126,8 @@
 adding file changes
 added 5 changesets with 5 changes to 5 files
 rebase completed
+% Try to rollback after a rebase (fail)
+no rollback information available
 
 % Rebase with base == '.' => same as no arguments (from 3 onto 7)
 3 files updated, 0 files merged, 3 files removed, 0 files unresolved