Fix a memory leak in reloading extension modules #3667

Reviewer: Barry Warsaw
diff --git a/Python/import.c b/Python/import.c
index 8159b5e..d87d751 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -612,7 +612,6 @@
 		mod = PyImport_AddModule(name);
 		if (mod == NULL)
 			return NULL;
-		Py_INCREF(mod);
 		mdict = PyModule_GetDict(mod);
 		if (mdict == NULL)
 			return NULL;
@@ -626,6 +625,7 @@
 		if (mod == NULL)
 			return NULL;
 		PyDict_SetItemString(PyImport_GetModuleDict(), name, mod);
+		Py_DECREF(mod);
 	}
 	if (_PyState_AddModule(mod, def) < 0) {
 		PyDict_DelItemString(PyImport_GetModuleDict(), name);