summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--icespider/core/core.cpp12
-rw-r--r--icespider/unittests/config/ice.properties2
2 files changed, 13 insertions, 1 deletions
diff --git a/icespider/core/core.cpp b/icespider/core/core.cpp
index 9ca37ea..6313209 100644
--- a/icespider/core/core.cpp
+++ b/icespider/core/core.cpp
@@ -92,6 +92,18 @@ namespace IceSpider {
Core::getProxy(const char * type) const
{
char * buf = __cxxabiv1::__cxa_demangle(type, NULL, NULL, NULL);
+ char * c = buf;
+ int off = 0;
+ while (*c) {
+ if (*(c + 1) == ':' && *c == ':') {
+ *c = '.';
+ off += 1;
+ }
+ else if (off) {
+ *c = *(c + off);
+ }
+ c += 1;
+ }
auto i = communicator->propertyToProxy(buf);
free(buf);
return i;
diff --git a/icespider/unittests/config/ice.properties b/icespider/unittests/config/ice.properties
index 237a838..737ce9c 100644
--- a/icespider/unittests/config/ice.properties
+++ b/icespider/unittests/config/ice.properties
@@ -1 +1 @@
-TestIceSpider::TestApi = Test
+TestIceSpider.TestApi = Test