Fixed Op destructors not being called
diff --git a/src/node/ext/call.cc b/src/node/ext/call.cc
index 560869e..49b3062 100644
--- a/src/node/ext/call.cc
+++ b/src/node/ext/call.cc
@@ -172,6 +172,9 @@
   return NanEscapeScope(NanNew<String>(GetTypeString()));
 }
 
+Op::~Op() {
+}
+
 class SendMetadataOp : public Op {
  public:
   Handle<Value> GetNodeValue() const {
@@ -325,7 +328,7 @@
   }
   ~ReadMessageOp() {
     if (recv_message != NULL) {
-      gpr_free(recv_message);
+      grpc_byte_buffer_destroy(recv_message);
     }
   }
   Handle<Value> GetNodeValue() const {