[ python-Bugs-1209880 ] doc bug in Lock.acquire

SourceForge.net noreply at sourceforge.net
Thu Jun 2 14:37:55 CEST 2005


Bugs item #1209880, was opened at 2005-05-27 10:04
Message generated for change (Comment added) made by akuchling
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1209880&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Documentation
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Chris Perkins (cperkins)
Assigned to: Nobody/Anonymous (nobody)
Summary: doc bug in Lock.acquire

Initial Comment:
The docs for the acquire method in both the thread and
threading modules are incorrect.  They describe an old
(insane) version that returned None when called with no
argument. It appears that acquire is now sane, and
always returns True or False.



----------------------------------------------------------------------

>Comment By: A.M. Kuchling (akuchling)
Date: 2005-06-02 08:37

Message:
Logged In: YES 
user_id=11375

I think the (args==NULL) code path is vestigial and can no longer be 
executed, because the PyArg_ParseTuple call will fail if args is NULL.


----------------------------------------------------------------------

Comment By: Reinhold Birkenfeld (birkenfeld)
Date: 2005-05-31 05:33

Message:
Logged In: YES 
user_id=1188172

It certainly seems that there is a code path in Lock.acquire
that can return None, as the following excerpt from
Modules/threadmodule.c shows:

static PyObject *
lock_PyThread_acquire_lock(lockobject *self, PyObject *args)
{
   int i = 1;

   if (!PyArg_ParseTuple(args, "|i:acquire", &i))
      return NULL;

   Py_BEGIN_ALLOW_THREADS
   i = PyThread_acquire_lock(self->lock_lock, i);
   Py_END_ALLOW_THREADS

   if (args == NULL) {
      Py_INCREF(Py_None);
      return Py_None;
   }
   else
      return PyBool_FromLong((long)i);
}

Nevertheless, a_lock.acquire() still returns true.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1209880&group_id=5470


More information about the Python-bugs-list mailing list