summaryrefslogtreecommitdiffstats
path: root/src/debug/logger.cpp
diff options
context:
space:
mode:
authorEmmanuel Gil Peyrot <linkmauve@linkmauve.fr>2019-01-23 04:02:07 +0000
committerMarc Jeanmougin <marcjeanmougin@free.fr>2019-01-24 17:08:27 +0000
commitc8c7b9487b8848b24adb7ccb560bbf3671418ebd (patch)
treeaec343b1533ea19ee6e0f590f4a8d210a36f7bd3 /src/debug/logger.cpp
parentEvent: Make property value char const* too. (diff)
downloadinkscape-c8c7b9487b8848b24adb7ccb560bbf3671418ebd.tar.gz
inkscape-c8c7b9487b8848b24adb7ccb560bbf3671418ebd.zip
Logger: Switch TagStack to std::shared_ptr.
Diffstat (limited to 'src/debug/logger.cpp')
-rw-r--r--src/debug/logger.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/debug/logger.cpp b/src/debug/logger.cpp
index 7c0990c2c..2c76921ac 100644
--- a/src/debug/logger.cpp
+++ b/src/debug/logger.cpp
@@ -11,12 +11,13 @@
*/
#include <fstream>
+#include <memory>
+#include <string>
#include <vector>
#include <glib.h>
#include "inkscape-version.h"
#include "debug/logger.h"
#include "debug/simple-event.h"
-#include "inkgc/gc-alloc.h"
namespace Inkscape {
@@ -59,7 +60,7 @@ static void write_indent(std::ostream &os, unsigned depth) {
static std::ofstream log_stream;
static bool empty_tag=false;
-typedef std::vector<Util::ptr_shared, GC::Alloc<Util::ptr_shared, GC::MANUAL> > TagStack;
+typedef std::vector<std::shared_ptr<std::string>> TagStack;
static TagStack &tag_stack() {
static TagStack stack;
return stack;
@@ -179,14 +180,14 @@ void Logger::_start(Event const &event) {
log_stream.flush();
- tag_stack().push_back(Util::share_string(name));
+ tag_stack().push_back(std::make_shared<std::string>(name));
empty_tag = true;
event.generateChildEvents();
}
void Logger::_skip() {
- tag_stack().push_back(Util::ptr_shared());
+ tag_stack().push_back(nullptr);
}
void Logger::_finish() {
@@ -195,7 +196,7 @@ void Logger::_finish() {
log_stream << "/>\n";
} else {
write_indent(log_stream, tag_stack().size() - 1);
- log_stream << "</" << tag_stack().back().pointer() << ">\n";
+ log_stream << "</" << tag_stack().back()->c_str() << ">\n";
}
log_stream.flush();