diff --git a/Lib/mailbox.py b/Lib/mailbox.py
index 7651e53..7e0689c 100755
--- a/Lib/mailbox.py
+++ b/Lib/mailbox.py
@@ -911,7 +911,7 @@
                     _unlock_file(f)
         finally:
             f.close()
-        for name, key_list in self.get_sequences():
+        for name, key_list in self.get_sequences().iteritems():
             if key in key_list:
                 msg.add_sequence(name)
         return msg
diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py
index bec51e5..714bf25 100644
--- a/Lib/test/test_mailbox.py
+++ b/Lib/test/test_mailbox.py
@@ -936,6 +936,12 @@
         self._box.remove(key1)
         self.assert_(self._box.get_sequences() == {'flagged':[key0]})
 
+    def test_issue2625(self):
+        msg0 = mailbox.MHMessage(self._template % 0)
+        msg0.add_sequence('foo')
+        key0 = self._box.add(msg0)
+        refmsg0 = self._box.get_message(key0)
+
     def test_pack(self):
         # Pack the contents of the mailbox
         msg0 = mailbox.MHMessage(self._template % 0)
