From 87b5d9196ece21916d5663928bfb8f69169b16b6 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Wed, 18 Apr 2007 02:02:15 +0000 Subject: [PATCH] Revert 53667 --- Misc/NEWS | 1 + Objects/setobject.c | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index bd76c87937b..9a13da67a14 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -14,6 +14,7 @@ Core and builtins - Revert SF #1615701: dict.update() does *not* call __getitem__() or keys() if subclassed. This is to remain consistent with 2.5. + Also revert revision 53667 with made a similar change to set.update(). What's New in Python 2.5.1c1? diff --git a/Objects/setobject.c b/Objects/setobject.c index a896d937fae..b336fba7a88 100644 --- a/Objects/setobject.c +++ b/Objects/setobject.c @@ -912,7 +912,7 @@ set_update_internal(PySetObject *so, PyObject *other) { PyObject *key, *it; - if (PyAnySet_CheckExact(other)) + if (PyAnySet_Check(other)) return set_merge(so, other); if (PyDict_CheckExact(other)) { @@ -1207,7 +1207,7 @@ set_intersection(PySetObject *so, PyObject *other) if (result == NULL) return NULL; - if (PyAnySet_CheckExact(other)) { + if (PyAnySet_Check(other)) { Py_ssize_t pos = 0; setentry *entry; @@ -1331,7 +1331,7 @@ set_difference_update_internal(PySetObject *so, PyObject *other) if ((PyObject *)so == other) return set_clear_internal(so); - if (PyAnySet_CheckExact(other)) { + if (PyAnySet_Check(other)) { setentry *entry; Py_ssize_t pos = 0; @@ -1380,7 +1380,7 @@ set_difference(PySetObject *so, PyObject *other) setentry *entry; Py_ssize_t pos = 0; - if (!PyAnySet_CheckExact(other) && !PyDict_CheckExact(other)) { + if (!PyAnySet_Check(other) && !PyDict_CheckExact(other)) { result = set_copy(so); if (result == NULL) return NULL; @@ -1487,7 +1487,7 @@ set_symmetric_difference_update(PySetObject *so, PyObject *other) Py_RETURN_NONE; } - if (PyAnySet_CheckExact(other)) { + if (PyAnySet_Check(other)) { Py_INCREF(other); otherset = (PySetObject *)other; } else { @@ -1570,7 +1570,7 @@ set_issubset(PySetObject *so, PyObject *other) setentry *entry; Py_ssize_t pos = 0; - if (!PyAnySet_CheckExact(other)) { + if (!PyAnySet_Check(other)) { PyObject *tmp, *result; tmp = make_new_set(&PySet_Type, other); if (tmp == NULL) @@ -1599,7 +1599,7 @@ set_issuperset(PySetObject *so, PyObject *other) { PyObject *tmp, *result; - if (!PyAnySet_CheckExact(other)) { + if (!PyAnySet_Check(other)) { tmp = make_new_set(&PySet_Type, other); if (tmp == NULL) return NULL;