Browse Source

use defer

B. Petersen 3 years ago
parent
commit
8d1f64610c
1 changed files with 4 additions and 1 deletions
  1. 4 1
      DcCore/DcCore/DC/Wrapper.swift

+ 4 - 1
DcCore/DcCore/DC/Wrapper.swift

@@ -1107,14 +1107,17 @@ public class DcMsg {
         defer {
             ptrSize.deallocate()
         }
+
         guard let ccharPtr = dc_msg_get_webxdc_blob(messagePointer, filename, ptrSize) else {
             return Data()
         }
+        defer {
+            dc_str_unref(ccharPtr)
+        }
 
         let count = ptrSize.pointee
         let buffer = UnsafeBufferPointer<Int8>(start: ccharPtr, count: count)
         let data = Data(buffer: buffer)
-        dc_str_unref(ccharPtr)
         return data
     }