]> git.saurik.com Git - cycript.git/blobdiff - ObjectiveC/Library.mm
Fix multi-line comments that end with **/.
[cycript.git] / ObjectiveC / Library.mm
index e8777b48a51571527404ca55fdb9f748bfd4a282..9d5289f4d206b7bfe17a87d938c18d039b5cc9b5 100644 (file)
@@ -1343,6 +1343,8 @@ static void CYObjectiveC_CallFunction(JSContextRef context, ffi_cif *cif, void (
 
 static bool CYObjectiveC_PoolFFI(apr_pool_t *pool, JSContextRef context, sig::Type *type, ffi_type *ffi, void *data, JSValueRef value) { CYSadTry {
     switch (type->primitive) {
+        // XXX: do something epic about blocks
+        case sig::block_P:
         case sig::object_P:
         case sig::typename_P:
             *reinterpret_cast<id *>(data) = CYCastNSObject(pool, context, value);
@@ -1361,6 +1363,8 @@ static bool CYObjectiveC_PoolFFI(apr_pool_t *pool, JSContextRef context, sig::Ty
 
 static JSValueRef CYObjectiveC_FromFFI(JSContextRef context, sig::Type *type, ffi_type *ffi, void *data, bool initialize, JSObjectRef owner) { CYPoolTry {
     switch (type->primitive) {
+        // XXX: do something epic about blocks
+        case sig::block_P:
         case sig::object_P:
             if (NSObject *object = *reinterpret_cast<NSObject **>(data)) {
                 JSValueRef value(CYCastJSValue(context, object));
@@ -2107,7 +2111,7 @@ static JSObjectRef Instance_new(JSContextRef context, JSObjectRef object, size_t
     if (count > 1)
         throw CYJSError(context, "incorrect number of arguments to Instance constructor");
     id self(count == 0 ? nil : CYCastPointer<id>(context, arguments[0]));
-    return Instance::Make(context, self);
+    return CYMakeInstance(context, self, false);
 } CYCatch }
 
 static JSValueRef CYValue_getProperty_value(JSContextRef context, JSObjectRef object, JSStringRef property, JSValueRef *exception) {
@@ -2455,5 +2459,7 @@ static CYHooks CYObjectiveCHooks = {
 struct CYObjectiveC {
     CYObjectiveC() {
         hooks_ = &CYObjectiveCHooks;
+        // XXX: evil magic juju to make this actually take effect on a Mac when compiled with autoconf/libtool doom!
+        _assert(hooks_ != NULL);
     }
 } CYObjectiveC;