diff --git a/bin/lib/Logos/Generator/MobileSubstrate/Subclass.pm b/bin/lib/Logos/Generator/MobileSubstrate/Subclass.pm index 75a04ca..f89aa0a 100644 --- a/bin/lib/Logos/Generator/MobileSubstrate/Subclass.pm +++ b/bin/lib/Logos/Generator/MobileSubstrate/Subclass.pm @@ -23,7 +23,7 @@ sub initializers { } # foreach(keys %{$class->protocols}) { - $return .= "class_addProtocol(".$self->variable($class).", objc_getProtocol(\"$_\")); "; + $return .= "class_addProtocol(".$self->variable($class).", objc_getProtocol(\"$_\") ?: \@protocol($_)); "; } $return .= "}"; return $return; diff --git a/bin/lib/Logos/Generator/internal/Subclass.pm b/bin/lib/Logos/Generator/internal/Subclass.pm index 63042f6..ae5fd71 100644 --- a/bin/lib/Logos/Generator/internal/Subclass.pm +++ b/bin/lib/Logos/Generator/internal/Subclass.pm @@ -24,7 +24,7 @@ sub initializers { # $return .= "objc_registerClassPair(".$self->variable($class)."); "; foreach(keys %{$class->protocols}) { - $return .= "class_addProtocol(".$self->variable($class).", objc_getProtocol(\"$_\")); "; + $return .= "class_addProtocol(".$self->variable($class).", objc_getProtocol(\"$_\") ?: \@protocol($_)); "; } $return .= "}"; return $return; diff --git a/bin/lib/Logos/Generator/libhooker/Subclass.pm b/bin/lib/Logos/Generator/libhooker/Subclass.pm index 9fd9fe3..913de83 100644 --- a/bin/lib/Logos/Generator/libhooker/Subclass.pm +++ b/bin/lib/Logos/Generator/libhooker/Subclass.pm @@ -23,7 +23,7 @@ sub initializers { } # foreach(keys %{$class->protocols}) { - $return .= "class_addProtocol(".$self->variable($class).", objc_getProtocol(\"$_\")); "; + $return .= "class_addProtocol(".$self->variable($class).", objc_getProtocol(\"$_\") ?: \@protocol($_)); "; } $return .= "}"; return $return;