Merged revisions 79645 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r79645 | benjamin.peterson | 2010-04-02 20:40:24 -0500 (Fri, 02 Apr 2010) | 13 lines

  Merged revisions 79642,79644 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r79642 | benjamin.peterson | 2010-04-02 20:08:34 -0500 (Fri, 02 Apr 2010) | 1 line

    split out large test function
  ........
    r79644 | benjamin.peterson | 2010-04-02 20:28:57 -0500 (Fri, 02 Apr 2010) | 1 line

    give TypeError when trying to set T_STRING_INPLACE
  ........
................
This commit is contained in:
Benjamin Peterson 2010-04-03 01:46:38 +00:00
parent 05609eff8a
commit bde0c9db80
4 changed files with 58 additions and 20 deletions

View file

@ -106,7 +106,7 @@ PyMember_SetOne(char *addr, PyMemberDef *l, PyObject *v)
addr += l->offset;
if ((l->flags & READONLY) || l->type == T_STRING)
if ((l->flags & READONLY))
{
PyErr_SetString(PyExc_AttributeError, "readonly attribute");
return -1;
@ -265,6 +265,10 @@ PyMember_SetOne(char *addr, PyMemberDef *l, PyObject *v)
*(char*)addr = string[0];
break;
}
case T_STRING:
case T_STRING_INPLACE:
PyErr_SetString(PyExc_TypeError, "readonly attribute");
return -1;
#ifdef HAVE_LONG_LONG
case T_LONGLONG:{
PY_LONG_LONG value;