From d9a70eefef48ddbdd4f0fb787138c5feeed86533 Mon Sep 17 00:00:00 2001 From: Damien Marchal Date: Thu, 16 Sep 2021 15:49:20 +0200 Subject: [PATCH] =?UTF-8?q?[SofaPython3]=C2=A0Add=20in=20DataHelper=20dedi?= =?UTF-8?q?cated=20to-string=20conversion=20from=20data=20field=20to=20inc?= =?UTF-8?q?rease=20compatibility=20with=20SofaPython(2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plugin/src/SofaPython3/DataHelper.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Plugin/src/SofaPython3/DataHelper.cpp b/Plugin/src/SofaPython3/DataHelper.cpp index 95e3e295..3d108284 100644 --- a/Plugin/src/SofaPython3/DataHelper.cpp +++ b/Plugin/src/SofaPython3/DataHelper.cpp @@ -43,9 +43,17 @@ std::string toSofaParsableString(const py::handle& p) } return tmp.str(); } + //TODO(dmarchal) This conversion to string is so bad. if(py::isinstance(p)) return py::str(p); + + // Insure compatibility with data field code returning value instead of data. + if(py::isinstance(p)) + { + sofa::core::objectmodel::BaseData* data = py::cast(p); + return data->getValueString(); + } return py::repr(p); }