From 8212a823712061550c1757ef688cde0f4faec953 Mon Sep 17 00:00:00 2001 From: Matthias Klose Date: Sat, 4 Apr 2009 15:51:23 +0000 Subject: [PATCH] - Py_DECREF: Add `do { ... } while (0)' to avoid compiler warnings. --- Include/object.h | 12 +++++++----- Misc/NEWS | 2 ++ 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Include/object.h b/Include/object.h index cfca64f9ab6..fb5376a2ed9 100644 --- a/Include/object.h +++ b/Include/object.h @@ -749,11 +749,13 @@ PyAPI_FUNC(void) _Py_AddToAllObjects(PyObject *, int force); ((PyObject*)(op))->ob_refcnt++) #define Py_DECREF(op) \ - if (_Py_DEC_REFTOTAL _Py_REF_DEBUG_COMMA \ - --((PyObject*)(op))->ob_refcnt != 0) \ - _Py_CHECK_REFCNT(op) \ - else \ - _Py_Dealloc((PyObject *)(op)) + do { \ + if (_Py_DEC_REFTOTAL _Py_REF_DEBUG_COMMA \ + --((PyObject*)(op))->ob_refcnt != 0) \ + _Py_CHECK_REFCNT(op) \ + else \ + _Py_Dealloc((PyObject *)(op)) \ + } while (0) /* Safely decref `op` and set `op` to NULL, especially useful in tp_clear * and tp_dealloc implementatons. diff --git a/Misc/NEWS b/Misc/NEWS index db86b517b24..f254bfd5d38 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -207,6 +207,8 @@ Core and Builtins - Issue #3845: In PyRun_SimpleFileExFlags avoid invalid memory access with short file names. +- Py_DECREF: Add `do { ... } while (0)' to avoid compiler warnings. + Library -------