]> git.saurik.com Git - cydia.git/commitdiff
Call setDelegate:nil during _H<> = nil.
authorJay Freeman (saurik) <saurik@saurik.com>
Mon, 21 Mar 2011 11:13:39 +0000 (04:13 -0700)
committerJay Freeman (saurik) <saurik@saurik.com>
Mon, 21 Mar 2011 11:13:39 +0000 (04:13 -0700)
CyteKit/TableViewCell.h
Menes/ObjectHandle.h

index 364a51ccd449846bc7911d8b55661df395f64146..32623b30ae3d450c1f9aaccc371aa263442f6c4b 100644 (file)
@@ -54,6 +54,8 @@
     _transient id<CyteTableViewCellDelegate> delegate_;
 }
 
+- (void) setDelegate:(id<CyteTableViewCellDelegate>)delegate;
+
 @end
 
 @interface CyteTableViewCell : UITableViewCell {
index 188ec1ae0993a214a1903a8d9a9b1596d4a80c4d..c4f4d1a73ffb626855def8957a1089e18b2a141a 100644 (file)
@@ -79,10 +79,10 @@ class MenesObjectHandle {
             CFRetain((CFTypeRef) value_);
     }
 
-    _finline void Clear_() {
-        if (value_ != nil) {
-            MenesObjectHandle_<Type_, Delegate_>::Execute(value_);
-            CFRelease((CFTypeRef) value_);
+    _finline void Release_(Type_ *value) {
+        if (value != nil) {
+            MenesObjectHandle_<Type_, Delegate_>::Execute(value);
+            CFRelease((CFTypeRef) value);
         }
     }
 
@@ -100,7 +100,7 @@ class MenesObjectHandle {
     }
 
     _finline ~MenesObjectHandle() {
-        Clear_();
+        Release_(value_);
     }
 
     _finline operator Type_ *() const {
@@ -112,8 +112,7 @@ class MenesObjectHandle {
             Type_ *old(value_);
             value_ = value;
             Retain_();
-            if (old != nil)
-                CFRelease((CFTypeRef) old);
+            Release_(old);
         } return *this;
     }