Fix BytesGenerator._handle_text() if the message has no payload (None)
diff --git a/Lib/email/generator.py b/Lib/email/generator.py
index 9d33f1c..e382b85 100644
--- a/Lib/email/generator.py
+++ b/Lib/email/generator.py
@@ -377,8 +377,11 @@
     def _handle_text(self, msg):
         # If the string has surrogates the original source was bytes, so
         # just write it back out.
-        if _has_surrogates(msg._payload):
-            self.write(msg._payload)
+        payload = msg.get_payload()
+        if payload is None:
+            return
+        if _has_surrogates(payload):
+            self.write(payload)
         else:
             super(BytesGenerator,self)._handle_text(msg)