summaryrefslogtreecommitdiff
path: root/unoidl
diff options
context:
space:
mode:
Diffstat (limited to 'unoidl')
-rw-r--r--unoidl/source/sourceprovider-parser.y10
1 files changed, 6 insertions, 4 deletions
diff --git a/unoidl/source/sourceprovider-parser.y b/unoidl/source/sourceprovider-parser.y
index 529d2045a273..bb4f5dc2a92a 100644
--- a/unoidl/source/sourceprovider-parser.y
+++ b/unoidl/source/sourceprovider-parser.y
@@ -16,6 +16,8 @@
#include <sal/config.h>
+#include <rtl/ustrbuf.hxx>
+
#include <algorithm>
#include <cassert>
#include <cerrno>
@@ -4013,14 +4015,14 @@ OUString SourceProviderType::getName() const {
return name;
case unoidl::detail::SourceProviderType::TYPE_INSTANTIATED_POLYMORPHIC_STRUCT:
{
- OUString n(name + "<");
+ OUStringBuffer n(name + "<");
for (auto i(subtypes.begin()); i != subtypes.end(); ++i) {
if (i != subtypes.begin()) {
- n += ",";
+ n.append(",");
}
- n += i->getName();
+ n.append(i->getName());
}
- return n + ">";
+ return n.append(">").makeStringAndClear();
}
default:
assert(false && "this cannot happen"); for (;;) { std::abort(); }