From: Jay Freeman (saurik) Date: Sat, 15 Sep 2012 15:17:52 +0000 (-0700) Subject: Change void to BlockLiteral in copy/dispose types. X-Git-Tag: v0.9.460~3 X-Git-Url: https://git.saurik.com/cycript.git/commitdiff_plain/07ae2f7f98a05c531f1f667ce1416cfdea3672a6 Change void to BlockLiteral in copy/dispose types. --- diff --git a/ObjectiveC/Library.mm b/ObjectiveC/Library.mm index 286f1df..7b33245 100644 --- a/ObjectiveC/Library.mm +++ b/ObjectiveC/Library.mm @@ -128,14 +128,22 @@ static void (*$objc_setAssociatedObject)(id object, void *key, id value, objc_As static id (*$objc_getAssociatedObject)(id object, void *key); static void (*$objc_removeAssociatedObjects)(id object); +struct BlockLiteral { + Class isa; + int flags; + int reserved; + void (*invoke)(void *, ...); + void *descriptor; +}; + struct BlockDescriptor1 { unsigned long int reserved; unsigned long int size; }; struct BlockDescriptor2 { - void (*copy_helper)(void *dst, void *src); - void (*dispose_helper)(void *src); + void (*copy_helper)(BlockLiteral *dst, BlockLiteral *src); + void (*dispose_helper)(BlockLiteral *src); }; struct BlockDescriptor3 { @@ -143,14 +151,6 @@ struct BlockDescriptor3 { const char *layout; }; -struct BlockLiteral { - Class isa; - int flags; - int reserved; - void (*invoke)(void *, ...); - void *descriptor; -}; - enum { BLOCK_DEALLOCATING = 0x0001, BLOCK_REFCOUNT_MASK = 0xfffe,