bug [ 1238170 ] threading.Thread uses {} as default argument
diff --git a/Lib/threading.py b/Lib/threading.py
index cbcc1f9..fe4490f 100644
--- a/Lib/threading.py
+++ b/Lib/threading.py
@@ -374,9 +374,11 @@
     __exc_info = _sys.exc_info
 
     def __init__(self, group=None, target=None, name=None,
-                 args=(), kwargs={}, verbose=None):
+                 args=(), kwargs=None, verbose=None):
         assert group is None, "group argument must be None for now"
         _Verbose.__init__(self, verbose)
+        if kwargs is None:
+            kwargs = {}
         self.__target = target
         self.__name = str(name or _newname())
         self.__args = args
diff --git a/Misc/NEWS b/Misc/NEWS
index 2c0207f..7c7c51d 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -168,6 +168,9 @@
 Library
 -------
 
+- Bug #1238170: threading.Thread.__init__ no longer has "kwargs={}" as a
+  parameter, but uses the usual "kwargs=None".
+
 - textwrap now processes text chucks at O(n) speed instead of O(n**2).
   Patch #1209527 (Contributed by Connelly).