mirror of
https://github.com/SoPat712/YTLitePlus.git
synced 2025-11-01 05:13:39 -04:00
22 lines
777 B
Plaintext
22 lines
777 B
Plaintext
#import <IOKit/IOKitLib.h>
|
|
#import <dlfcn.h>
|
|
|
|
%hookf(kern_return_t, IOServiceGetMatchingServices, mach_port_t mainPort, CFDictionaryRef matching, io_iterator_t *existing) {
|
|
if (CFDictionaryGetValue(matching, CFSTR("AppleAVD")))
|
|
return 0;
|
|
return %orig(mainPort, matching, existing);
|
|
}
|
|
|
|
%hookf(BOOL, AppleAVDCheckPlatform) {
|
|
return YES;
|
|
}
|
|
|
|
%ctor {
|
|
const char *avdPath = "/System/Library/VideoDecoders/AVD.videodecoder";
|
|
void *avd = dlopen(avdPath, RTLD_LAZY);
|
|
MSImageRef ref = MSGetImageByName(avdPath);
|
|
void *AppleAVDCheckPlatform_p = MSFindSymbol(ref, "_AppleAVDCheckPlatform");
|
|
HBLogDebug(@"AVD open: %d, pointer: %d", avd != NULL, AppleAVDCheckPlatform_p != NULL);
|
|
%init(AppleAVDCheckPlatform = (void *)AppleAVDCheckPlatform_p);
|
|
}
|