From f3386c530e4cb74c0e97cef18584d861c7055887 Mon Sep 17 00:00:00 2001 From: David Chisnall Date: Fri, 23 Mar 2018 10:20:37 +0000 Subject: [PATCH] Add asserts that we don't see extended type encodings in selectors. It might be a good idea to handle user-provided extended type encodings, but for now we just abort. --- selector_table.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/selector_table.c b/selector_table.c index 4446d16..bf9d97c 100644 --- a/selector_table.c +++ b/selector_table.c @@ -376,6 +376,7 @@ PRIVATE SEL objc_register_selector(SEL aSel) aSel->name = registered->name; return registered; } + assert(!(aSel->types && (strstr(aSel->types, "@\"") != NULL))); LOCK(&selector_table_lock); register_selector_locked(aSel); UNLOCK(&selector_table_lock); @@ -401,6 +402,7 @@ static SEL objc_register_selector_copy(SEL aSel, BOOL copyArgs) { return copy; } + assert(!(aSel->types && (strstr(aSel->types, "@\"") != NULL))); // Create a copy of this selector. copy = selector_pool_alloc(); copy->name = aSel->name;