summaryrefslogtreecommitdiffstats
path: root/src/util/share.cpp
diff options
context:
space:
mode:
authorMarc Jeanmougin <marc@jeanmougin.fr>2017-10-20 18:50:29 +0000
committerMarc Jeanmougin <marc@jeanmougin.fr>2017-10-20 18:50:29 +0000
commit683029f31f0f1814c21ca65f7f113ac12b6242fb (patch)
tree4d4adb5dcfc962c4caaebaf6b448cc8b6477a194 /src/util/share.cpp
parentMerge branch 'cleanups' of gitlab.com:stfacc/inkscape (diff)
parentRefactor Util::ptr_shared (diff)
downloadinkscape-683029f31f0f1814c21ca65f7f113ac12b6242fb.tar.gz
inkscape-683029f31f0f1814c21ca65f7f113ac12b6242fb.zip
Merge branch 'smartpointer_refactor' of gitlab.com:jali/inkscape
Diffstat (limited to 'src/util/share.cpp')
-rw-r--r--src/util/share.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/util/share.cpp b/src/util/share.cpp
index 3cb289b10..d5d93fc75 100644
--- a/src/util/share.cpp
+++ b/src/util/share.cpp
@@ -1,5 +1,6 @@
/*
- * Inkscape::Util::ptr_shared<T> - like T const *, but stronger
+ * Inkscape::Util::ptr_shared<T> - like T const *, but stronger.
+ * Used to hold c-style strings for objects that are managed by the gc.
*
* Authors:
* MenTaLguY <mental@rydia.net>
@@ -15,13 +16,13 @@
namespace Inkscape {
namespace Util {
-ptr_shared<char> share_string(char const *string) {
- g_return_val_if_fail(string != NULL, share_unsafe<char>(NULL));
+ptr_shared share_string(char const *string) {
+ g_return_val_if_fail(string != NULL, share_unsafe(NULL));
return share_string(string, std::strlen(string));
}
-ptr_shared<char> share_string(char const *string, std::size_t length) {
- g_return_val_if_fail(string != NULL, share_unsafe<char>(NULL));
+ptr_shared share_string(char const *string, std::size_t length) {
+ g_return_val_if_fail(string != NULL, share_unsafe(NULL));
char *new_string=new (GC::ATOMIC) char[length+1];
std::memcpy(new_string, string, length);
new_string[length] = 0;