summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/configuration.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/python/configuration.cc b/python/configuration.cc
index 3e634901..37374625 100644
--- a/python/configuration.cc
+++ b/python/configuration.cc
@@ -331,13 +331,16 @@ static PyObject *CnfMap(PyObject *Self,PyObject *Arg)
// Assignment with operator []
static int CnfMapSet(PyObject *Self,PyObject *Arg,PyObject *Val)
{
- if (PyString_Check(Arg) == 0 || PyString_Check(Val) == 0)
+ if (PyString_Check(Arg) == 0 || (Val != NULL && PyString_Check(Val) == 0))
{
PyErr_SetNone(PyExc_TypeError);
return -1;
}
- GetSelf(Self).Set(PyString_AsString(Arg),PyString_AsString(Val));
+ if (Val == NULL)
+ GetSelf(Self).Clear(PyString_AsString(Arg));
+ else
+ GetSelf(Self).Set(PyString_AsString(Arg),PyString_AsString(Val));
return 0;
}
/*}}}*/