Issue #7470: logging: fix bug in Unicode encoding fallback.
diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py
index 3f8cf05..e0d6281 100644
--- a/Lib/logging/__init__.py
+++ b/Lib/logging/__init__.py
@@ -821,9 +821,9 @@
                 try:
                     if (isinstance(msg, unicode) and
                         getattr(stream, 'encoding', None)):
-                        fs = fs.decode(stream.encoding)
+                        ufs = fs.decode(stream.encoding)
                         try:
-                            stream.write(fs % msg)
+                            stream.write(ufs % msg)
                         except UnicodeEncodeError:
                             #Printing to terminals sometimes fails. For example,
                             #with an encoding of 'cp1251', the above write will
@@ -831,7 +831,7 @@
                             #the codecs module, but fail when writing to a
                             #terminal even when the codepage is set to cp1251.
                             #An extra encoding step seems to be needed.
-                            stream.write((fs % msg).encode(stream.encoding))
+                            stream.write((ufs % msg).encode(stream.encoding))
                     else:
                         stream.write(fs % msg)
                 except UnicodeError:
diff --git a/Misc/NEWS b/Misc/NEWS
index e4c3918..38640a7 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -15,6 +15,8 @@
 Library
 -------
 
+- Issue #7470: logging: fix bug in Unicode encoding fallback.
+
 - Issue #5949: fixed IMAP4_SSL hang when the IMAP server response is
   missing proper end-of-line termination.