Changeset 185890 in webkit


Ignore:
Timestamp:
Jun 23, 2015 5:21:04 PM (9 years ago)
Author:
mitz@apple.com
Message:

Restore binary compatibility with iOS 8 Safari after r185877
https://bugs.webkit.org/show_bug.cgi?id=146263

Reviewed by Anders Carlsson.

  • Platform/spi/Cocoa: Added.
  • Platform/spi/Cocoa/NSInvocationSPI.h: Added.
  • UIProcess/API/Cocoa/WKSecurityOrigin.mm:

(-[WKSecurityOrigin methodSignatureForSelector:]): Override to check _WKSecurityOrigin for
possible category methods with the specified selector.
(-[WKSecurityOrigin forwardInvocation:]): Invoke using the implementation of the
_WKSecurityOrigin category method.

  • WebKit2.xcodeproj/project.pbxproj:
Location:
trunk/Source/WebKit2
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r185887 r185890  
     12015-06-23  Dan Bernstein  <mitz@apple.com>
     2
     3        Restore binary compatibility with iOS 8 Safari after r185877
     4        https://bugs.webkit.org/show_bug.cgi?id=146263
     5
     6        Reviewed by Anders Carlsson.
     7
     8        * Platform/spi/Cocoa: Added.
     9        * Platform/spi/Cocoa/NSInvocationSPI.h: Added.
     10
     11        * UIProcess/API/Cocoa/WKSecurityOrigin.mm:
     12        (-[WKSecurityOrigin methodSignatureForSelector:]): Override to check _WKSecurityOrigin for
     13        possible category methods with the specified selector.
     14        (-[WKSecurityOrigin forwardInvocation:]): Invoke using the implementation of the
     15        _WKSecurityOrigin category method.
     16
     17        * WebKit2.xcodeproj/project.pbxproj:
     18
    1192015-06-23  Anders Carlsson  <andersca@apple.com>
    220
  • trunk/Source/WebKit2/UIProcess/API/Cocoa/WKSecurityOrigin.mm

    r185877 r185890  
    2929#if WK_API_ENABLED
    3030
     31#import "NSInvocationSPI.h"
     32#import "_WKSecurityOrigin.h"
    3133#import <WebCore/ResourceRequest.h>
    3234#import <WebCore/SecurityOrigin.h>
     
    6971}
    7072
     73#pragma mark iOS 8 Safari binary compatibility
     74
     75#if PLATFORM(IOS)
     76
     77- (NSMethodSignature *)methodSignatureForSelector:(SEL)selector
     78{
     79    return [_WKSecurityOrigin instanceMethodSignatureForSelector:selector];
     80}
     81
     82- (void)forwardInvocation:(NSInvocation *)invocation
     83{
     84    [invocation invokeUsingIMP:[_WKSecurityOrigin instanceMethodForSelector:invocation.selector]];
     85}
     86
     87#endif
     88
    7189@end
    7290
  • trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj

    r185877 r185890  
    759759                3743925818BC4C60001C8675 /* WKUIDelegatePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 3743925718BC4C60001C8675 /* WKUIDelegatePrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
    760760                374436881820E7240049579F /* WKObject.mm in Sources */ = {isa = PBXBuildFile; fileRef = 374436871820E7240049579F /* WKObject.mm */; };
     761                3754D5451B3A29FD003A4C7F /* NSInvocationSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 3754D5441B3A29FD003A4C7F /* NSInvocationSPI.h */; };
    761762                3760881E150413E900FC82C7 /* WebRenderObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3760881C150413E900FC82C7 /* WebRenderObject.cpp */; };
    762763                3760881F150413E900FC82C7 /* WebRenderObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 3760881D150413E900FC82C7 /* WebRenderObject.h */; };
     
    29052906                3743925718BC4C60001C8675 /* WKUIDelegatePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKUIDelegatePrivate.h; sourceTree = "<group>"; };
    29062907                374436871820E7240049579F /* WKObject.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKObject.mm; sourceTree = "<group>"; };
     2908                3754D5441B3A29FD003A4C7F /* NSInvocationSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NSInvocationSPI.h; path = Cocoa/NSInvocationSPI.h; sourceTree = "<group>"; };
    29072909                375FB4731883415600BE34D4 /* Info-iOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-iOS.plist"; sourceTree = "<group>"; };
    29082910                3760881C150413E900FC82C7 /* WebRenderObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebRenderObject.cpp; sourceTree = "<group>"; };
     
    52575259                        sourceTree = "<group>";
    52585260                };
     5261                3754D5411B3A2998003A4C7F /* Cocoa */ = {
     5262                        isa = PBXGroup;
     5263                        children = (
     5264                                3754D5441B3A29FD003A4C7F /* NSInvocationSPI.h */,
     5265                        );
     5266                        name = Cocoa;
     5267                        sourceTree = "<group>";
     5268                };
    52595269                37C4C08318149C2A003688B9 /* Cocoa */ = {
    52605270                        isa = PBXGroup;
     
    73157325                        isa = PBXGroup;
    73167326                        children = (
     7327                                3754D5411B3A2998003A4C7F /* Cocoa */,
    73177328                                CE1A0BCB1A48E6C60054EF74 /* ios */,
    73187329                        );
     
    75377548                                E4E864931B16750700C82F40 /* VersionChecks.h in Headers */,
    75387549                                1AC1336C18565C7A00F3EC05 /* APIPageHandle.h in Headers */,
     7550                                3754D5451B3A29FD003A4C7F /* NSInvocationSPI.h in Headers */,
    75397551                                1AFDD3151891B54000153970 /* APIPolicyClient.h in Headers */,
    75407552                                7CE4D2201A4914CA00C7F152 /* APIProcessPoolConfiguration.h in Headers */,
Note: See TracChangeset for help on using the changeset viewer.