summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Key.cpp9
-rw-r--r--src/String.cpp9
2 files changed, 14 insertions, 4 deletions
diff --git a/src/Key.cpp b/src/Key.cpp
index e3ccbe6..ed0c0c6 100644
--- a/src/Key.cpp
+++ b/src/Key.cpp
@@ -67,8 +67,13 @@ std::string Key::GetValue() const
67{ 67{
68 char* s = NULL; 68 char* s = NULL;
69 plist_get_key_val(_node, &s); 69 plist_get_key_val(_node, &s);
70 std::string ret = s; 70 std::string ret;
71 free(s); 71 if (s) {
72 ret = s;
73 free(s);
74 } else {
75 ret = "";
76 }
72 return ret; 77 return ret;
73} 78}
74 79
diff --git a/src/String.cpp b/src/String.cpp
index 09b47b5..0965349 100644
--- a/src/String.cpp
+++ b/src/String.cpp
@@ -67,8 +67,13 @@ std::string String::GetValue() const
67{ 67{
68 char* s = NULL; 68 char* s = NULL;
69 plist_get_string_val(_node, &s); 69 plist_get_string_val(_node, &s);
70 std::string ret = s; 70 std::string ret;
71 free(s); 71 if (s) {
72 ret = s;
73 free(s);
74 } else {
75 ret = "";
76 }
72 return ret; 77 return ret;
73} 78}
74 79