diff --git a/Objects/frameobject.c b/Objects/frameobject.c
index e092ce6..cf3d73a 100644
--- a/Objects/frameobject.c
+++ b/Objects/frameobject.c
@@ -345,12 +345,11 @@
 {
 	int j;
 	for (j = nmap; --j >= 0; ) {
-		PyObject *key = PyTuple_GetItem(map, j);
+		PyObject *key = PyTuple_GET_ITEM(map, j);
 		PyObject *value = values[j];
 		if (deref)
 			value = PyCell_GET(value);
 		if (value == NULL) {
-			PyErr_Clear();
 			if (PyDict_DelItem(dict, key) != 0)
 				PyErr_Clear();
 		}
@@ -367,17 +366,21 @@
 {
 	int j;
 	for (j = nmap; --j >= 0; ) {
-		PyObject *key = PyTuple_GetItem(map, j);
+		PyObject *key = PyTuple_GET_ITEM(map, j);
 		PyObject *value = PyDict_GetItem(dict, key);
-		Py_XINCREF(value);
 		if (deref) {
 			if (value || clear) {
-				if (PyCell_Set(values[j], value) < 0)
-					PyErr_Clear();
+				if (PyCell_GET(values[j]) != value) {
+					if (PyCell_Set(values[j], value) < 0)
+						PyErr_Clear();
+				}
 			}
 		} else if (value != NULL || clear) {
-			Py_XDECREF(values[j]);
-			values[j] = value;
+			if (values[j] != value) {
+				Py_XINCREF(value);
+				Py_XDECREF(values[j]);
+				values[j] = value;
+			}
 		}
 	}
 }
