fix regression with unicode support
This commit is contained in:
@@ -330,13 +330,16 @@ PyObject* FeaturePythonPyT<FeaturePyT>::addProperty(PyObject *args)
|
||||
{
|
||||
char *sType,*sName=0,*sGroup=0,*sDoc=0;
|
||||
short attr=0;
|
||||
std::string sDocStr;
|
||||
PyObject *ro = Py_False, *hd = Py_False;
|
||||
if (!PyArg_ParseTuple(args, "s|ssethO!O!", &sType,&sName,&sGroup,"utf-8",&sDoc,&attr,
|
||||
&PyBool_Type, &ro, &PyBool_Type, &hd)) // convert args: Python->C
|
||||
return NULL; // NULL triggers exception
|
||||
|
||||
std::string sDocStr = std::string(sDoc);
|
||||
PyMem_Free(sDoc);
|
||||
if (sDoc) {
|
||||
sDocStr = sDoc;
|
||||
PyMem_Free(sDoc);
|
||||
}
|
||||
|
||||
Property* prop=0;
|
||||
prop = FeaturePyT::getDocumentObjectPtr()->addDynamicProperty(sType,sName,sGroup,sDocStr.c_str(),attr,
|
||||
|
||||
@@ -67,13 +67,16 @@ PyObject* ViewProviderPythonFeaturePy::addProperty(PyObject *args)
|
||||
{
|
||||
char *sType,*sName=0,*sGroup=0,*sDoc=0;
|
||||
short attr=0;
|
||||
std::string sDocStr;
|
||||
PyObject *ro = Py_False, *hd = Py_False;
|
||||
if (!PyArg_ParseTuple(args, "s|ssethO!O!", &sType,&sName,&sGroup,"utf-8",&sDoc,&attr,
|
||||
&PyBool_Type, &ro, &PyBool_Type, &hd)) // convert args: Python->C
|
||||
return NULL; // NULL triggers exception
|
||||
|
||||
std::string sDocStr = std::string(sDoc);
|
||||
PyMem_Free(sDoc);
|
||||
if (sDoc) {
|
||||
sDocStr = sDoc;
|
||||
PyMem_Free(sDoc);
|
||||
}
|
||||
|
||||
App::Property* prop=0;
|
||||
prop = getViewProviderPythonFeaturePtr()->addDynamicProperty(sType,sName,sGroup,sDocStr.c_str(),attr,
|
||||
|
||||
Reference in New Issue
Block a user