]> git.cworth.org Git - apitrace/commitdiff
The Value from the enum signature was leaking.
authorZack Rusin <zack@kde.org>
Sun, 24 Apr 2011 22:00:11 +0000 (18:00 -0400)
committerZack Rusin <zack@kde.org>
Sun, 24 Apr 2011 22:00:11 +0000 (18:00 -0400)
trace_model.hpp

index 6adf4c2a55d44a9d286c9ad84d0e376ebd8885fa..8436fc1afac77bb7dd6ab8a08b5351a71d458376 100644 (file)
@@ -189,7 +189,19 @@ public:
 class Enum : public Value
 {
 public:
-    typedef std::pair<std::string, Value *> Signature;
+    struct Signature : public std::pair<std::string, Value *>
+    {
+        Signature()
+            : std::pair<std::string, Value *>()
+        {}
+        Signature(const std::string &n, Trace::Value *val)
+            : std::pair<std::string, Value *>(n, val)
+        {}
+        ~Signature()
+        {
+            delete second;
+        }
+    };
 
     Enum(const Signature *_sig) : sig(_sig) {}