File: xattr.c
Function: pyremovexattr
Error: returning (PyObject*)NULL without setting an exception
670 static PyObject *
671 pyremovexattr(PyObject *self, PyObject *args)
672 {
673     PyObject *myarg, *res;
674     int nofollow = 0;
675     char *attrname = NULL;
676     int nret;
677     target_t tgt;
678 
679     /* Parse the arguments */
680     if (!PyArg_ParseTuple(args, "Oet|i", &myarg, NULL, &attrname, &nofollow))
when _PyArg_ParseTuple_SizeT() succeeds
taking False path
681         return NULL;
682 
683     if(!convertObj(myarg, &tgt, nofollow)) {
when considering value == (int)0 from xattr.c:683
taking True path
684         res = NULL;
685         goto freearg;
686     }
687 
688     /* Remove the attribute */
689     nret = _remove_obj(&tgt, attrname);
690 
691     free_tgt(&tgt);
692 
693     if(nret == -1) {
694         res = PyErr_SetFromErrno(PyExc_IOError);
695         goto freearg;
696     }
697 
698     Py_INCREF(Py_None);
699     res = Py_None;
700 
701  freearg:
702     PyMem_Free(attrname);
703 
704     /* Return the result */
705     return res;
706 }
returning (PyObject*)NULL without setting an exception