Browse Source

Properly fix lilvmm leaks

tags/v0.9.0
falkTX 13 years ago
parent
commit
30130eb781
2 changed files with 7 additions and 7 deletions
  1. +5
    -6
      c++/carla-lilv/custom-patches/lilvmm_fix-leaks.patch
  2. +2
    -1
      c++/carla-lilv/lilv-0.14.4/lilv/lilvmm.hpp

+ 5
- 6
c++/carla-lilv/custom-patches/lilvmm_fix-leaks.patch View File

@@ -1,12 +1,11 @@
diff -U 3 -H -b -B -d -r -N -- lilv-0.14.4.old/lilv/lilvmm.hpp lilv-0.14.4/lilv/lilvmm.hpp diff -U 3 -H -b -B -d -r -N -- lilv-0.14.4.old/lilv/lilvmm.hpp lilv-0.14.4/lilv/lilvmm.hpp
--- lilv-0.14.4.old/lilv/lilvmm.hpp 2012-09-12 12:20:08.000000000 +0100
+++ lilv-0.14.4/lilv/lilvmm.hpp 2012-09-12 12:20:15.257530963 +0100
@@ -60,7 +60,7 @@
--- lilv-0.14.4.old/lilv/lilvmm.hpp 2012-09-13 12:47:55.000000000 +0100
+++ lilv-0.14.4/lilv/lilvmm.hpp 2012-09-13 12:48:10.950555311 +0100
@@ -60,6 +60,7 @@
#endif #endif
struct Node { struct Node {
- inline Node(const LilvNode* node) : me(lilv_node_duplicate(node)) {}
+ inline Node(const LilvNode* node) : me(lilv_node_duplicate(node)) { lilv_node_free((LilvNode*)node); }
+ inline Node(LilvNode* node) : me(node) {}
inline Node(const LilvNode* node) : me(lilv_node_duplicate(node)) {}
inline Node(const Node& copy) : me(lilv_node_duplicate(copy.me)) {} inline Node(const Node& copy) : me(lilv_node_duplicate(copy.me)) {}
inline ~Node() { lilv_node_free(me); }

+ 2
- 1
c++/carla-lilv/lilv-0.14.4/lilv/lilvmm.hpp View File

@@ -60,7 +60,8 @@ uri_to_path(const char* uri) {
#endif #endif


struct Node { struct Node {
inline Node(const LilvNode* node) : me(lilv_node_duplicate(node)) { lilv_node_free((LilvNode*)node); }
inline Node(LilvNode* node) : me(node) {}
inline Node(const LilvNode* node) : me(lilv_node_duplicate(node)) {}
inline Node(const Node& copy) : me(lilv_node_duplicate(copy.me)) {} inline Node(const Node& copy) : me(lilv_node_duplicate(copy.me)) {}


inline ~Node() { lilv_node_free(me); } inline ~Node() { lilv_node_free(me); }


Loading…
Cancel
Save