WebKit Bugzilla
Attachment 339594 Details for
Bug 185324
: Activate ARC for libwebrtc Objective C files
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-185324-20180504141317.patch (text/plain), 15.26 KB, created by
youenn fablet
on 2018-05-04 14:13:17 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
youenn fablet
Created:
2018-05-04 14:13:17 PDT
Size:
15.26 KB
patch
obsolete
>Subversion Revision: 231370 >diff --git a/Source/ThirdParty/libwebrtc/ChangeLog b/Source/ThirdParty/libwebrtc/ChangeLog >index 8865a263aa753ffeb43a83d16635ab35293f799b..0995bab4f4baff896571f7de86cf0be92a25d672 100644 >--- a/Source/ThirdParty/libwebrtc/ChangeLog >+++ b/Source/ThirdParty/libwebrtc/ChangeLog >@@ -1,3 +1,28 @@ >+2018-05-04 Youenn Fablet <youenn@apple.com> >+ >+ Activate ARC for libwebrtc Objective C files >+ https://bugs.webkit.org/show_bug.cgi?id=185324 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Revert changes made to libwebrtc to accomodate from not using ARC. >+ Use ARC for libwebrtc objective C files. >+ >+ * Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h: >+ * Source/webrtc/sdk/objc/Framework/Classes/Video/RTCCVPixelBuffer.mm: >+ (-[RTCCVPixelBuffer dealloc]): >+ * Source/webrtc/sdk/objc/Framework/Classes/Video/objc_frame_buffer.mm: >+ (webrtc::ObjCFrameBuffer::~ObjCFrameBuffer): >+ * Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoDecoderH264.mm: >+ (-[RTCVideoDecoderH264 dealloc]): >+ (-[RTCVideoDecoderH264 setCallback:]): >+ (-[RTCVideoDecoderH264 releaseDecoder]): >+ * Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm: >+ (-[RTCVideoEncoderH264 dealloc]): >+ (-[RTCVideoEncoderH264 setCallback:]): >+ (-[RTCVideoEncoderH264 releaseEncoder]): >+ * libwebrtc.xcodeproj/project.pbxproj: >+ > 2018-05-02 Youenn Fablet <youenn@apple.com> > > Disable VCP for iOS until it is fully working >diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h >index 3d599128b3a876e8e0b3eb0d4d541a2ba81a4a40..4e5019dd4d8271d3f6a5a29f1cc69e35316b8bef 100644 >--- a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h >+++ b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h >@@ -100,7 +100,7 @@ > { \ > void** pointer = static_cast<void**>(dlsym(framework##Library(), #name)); \ > if (pointer) \ >- pointer##name = static_cast<type>(*pointer); \ >+ pointer##name = (__bridge type)(*pointer); \ > get##name = name##Function; \ > return pointer##name; \ > } >diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/RTCCVPixelBuffer.mm b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/RTCCVPixelBuffer.mm >index 537a65e17d3f8c8d474b0b65e6bf0d8ac3b74782..203896758e833fe6dc6b83e81305d82bcee882ba 100644 >--- a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/RTCCVPixelBuffer.mm >+++ b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/RTCCVPixelBuffer.mm >@@ -73,7 +73,6 @@ - (instancetype)initWithPixelBuffer:(CVPixelBufferRef)pixelBuffer > > - (void)dealloc { > CVBufferRelease(_pixelBuffer); >- [super dealloc]; > } > > - (int)width { >diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/objc_frame_buffer.mm b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/objc_frame_buffer.mm >index 0586b0664c736d9dd5cc9c51ee0c7c5740641cf6..3658562eb2957f027c4a4fd2d09d6e97be8caf23 100644 >--- a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/objc_frame_buffer.mm >+++ b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/Video/objc_frame_buffer.mm >@@ -50,10 +50,7 @@ class ObjCI420FrameBuffer : public I420BufferInterface { > ObjCFrameBuffer::ObjCFrameBuffer(id<RTCVideoFrameBuffer> frame_buffer) > : frame_buffer_(frame_buffer), width_(frame_buffer.width), height_(frame_buffer.height) {} > >-ObjCFrameBuffer::~ObjCFrameBuffer() { >- // FIXME: Activate ARC. >- [frame_buffer_ release]; >-} >+ObjCFrameBuffer::~ObjCFrameBuffer() {} > > VideoFrameBuffer::Type ObjCFrameBuffer::type() const { > return Type::kNative; >diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoDecoderH264.mm b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoDecoderH264.mm >index 34d08db0e3b8c02ef895a7d32ae345fda143e7f7..1e102cf62a74f39d704a77e4f46b65878f5ea209 100644 >--- a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoDecoderH264.mm >+++ b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoDecoderH264.mm >@@ -90,10 +90,6 @@ - (instancetype)init { > - (void)dealloc { > [self destroyDecompressionSession]; > [self setVideoFormat:nullptr]; >- if (_callback) { >- Block_release(_callback); >- } >- [super dealloc]; > } > > - (NSInteger)startDecodeWithSettings:(RTCVideoEncoderSettings *)settings >@@ -182,7 +178,7 @@ - (NSInteger)decode:(RTCEncodedImage *)inputImage > } > > - (void)setCallback:(RTCVideoDecoderCallback)callback { >- _callback = Block_copy(callback); >+ _callback = callback; > } > > - (void)setError:(OSStatus)error { >@@ -194,7 +190,6 @@ - (NSInteger)releaseDecoder { > // is safe to null out the callback. > [self destroyDecompressionSession]; > [self setVideoFormat:nullptr]; >- Block_release(_callback); > _callback = nullptr; > return WEBRTC_VIDEO_CODEC_OK; > } >diff --git a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm >index dcb4401ca4bde0da3afa1808fb1a1efa74b30a07..239f3d65776c90110a6be1f33b39d9e9cc77b3da 100644 >--- a/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm >+++ b/Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm >@@ -355,10 +355,6 @@ - (instancetype)initWithCodecInfo:(RTCVideoCodecInfo *)codecInfo { > > - (void)dealloc { > [self destroyCompressionSession]; >- if (_callback) { >- Block_release(_callback); >- } >- [super dealloc]; > } > > - (NSInteger)startEncodeWithSettings:(RTCVideoEncoderSettings *)settings >@@ -504,7 +500,7 @@ - (NSInteger)encode:(RTCVideoFrame *)frame > } > > - (void)setCallback:(RTCVideoEncoderCallback)callback { >- _callback = Block_copy(callback); >+ _callback = callback; > } > > - (int)setBitrate:(uint32_t)bitrateKbit framerate:(uint32_t)framerate { >@@ -521,7 +517,6 @@ - (NSInteger)releaseEncoder { > // callback anymore. Do not remove callback until the session is invalidated > // since async encoder callbacks can occur until invalidation. > [self destroyCompressionSession]; >- Block_release(_callback); > _callback = nullptr; > return WEBRTC_VIDEO_CODEC_OK; > } >diff --git a/Source/ThirdParty/libwebrtc/libwebrtc.xcodeproj/project.pbxproj b/Source/ThirdParty/libwebrtc/libwebrtc.xcodeproj/project.pbxproj >index 76010f00f0942e707effd700987225db13b2ea46..6d5001a2e3d5f3da4f41130b76477f8009cecf74 100644 >--- a/Source/ThirdParty/libwebrtc/libwebrtc.xcodeproj/project.pbxproj >+++ b/Source/ThirdParty/libwebrtc/libwebrtc.xcodeproj/project.pbxproj >@@ -809,34 +809,34 @@ > 41EA54191EFC2D53002FF04C /* md4.c in Sources */ = {isa = PBXBuildFile; fileRef = 41EA54131EFC2D4F002FF04C /* md4.c */; }; > 41EA541A1EFC2D53002FF04C /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = 41EA54181EFC2D53002FF04C /* md5.c */; }; > 41ECEAB620630108009D5141 /* RTCVideoCodec+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEAB320630107009D5141 /* RTCVideoCodec+Private.h */; }; >- 41ECEAB720630108009D5141 /* RTCVideoCodec.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAB420630107009D5141 /* RTCVideoCodec.mm */; }; >- 41ECEAB820630108009D5141 /* RTCVideoCodecH264.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAB520630108009D5141 /* RTCVideoCodecH264.mm */; }; >+ 41ECEAB720630108009D5141 /* RTCVideoCodec.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAB420630107009D5141 /* RTCVideoCodec.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; >+ 41ECEAB820630108009D5141 /* RTCVideoCodecH264.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAB520630108009D5141 /* RTCVideoCodecH264.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEABC206403C2009D5141 /* WebKitUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEABB206403C1009D5141 /* WebKitUtilities.h */; }; >- 41ECEABE20640498009D5141 /* WebKitUtilities.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEABD20640498009D5141 /* WebKitUtilities.mm */; }; >+ 41ECEABE20640498009D5141 /* WebKitUtilities.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEABD20640498009D5141 /* WebKitUtilities.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEAC120640F28009D5141 /* NSString+StdString.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEABF20640F27009D5141 /* NSString+StdString.h */; }; > 41ECEAC220640F28009D5141 /* NSString+StdString.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAC020640F28009D5141 /* NSString+StdString.mm */; }; >- 41ECEAC3206411E2009D5141 /* RTCVideoDecoderH264.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F81FE1987C00373E99 /* RTCVideoDecoderH264.mm */; }; >- 41ECEAC4206411E5009D5141 /* RTCVideoEncoderH264.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F41FE1987B00373E99 /* RTCVideoEncoderH264.mm */; }; >- 41ECEAC620641303009D5141 /* RTCCVPixelBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAC520641302009D5141 /* RTCCVPixelBuffer.mm */; }; >- 41ECEAC820641328009D5141 /* RTCEncodedImage.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAC720641328009D5141 /* RTCEncodedImage.mm */; }; >- 41ECEACB2064134F009D5141 /* RTCVideoFrame.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAC92064134E009D5141 /* RTCVideoFrame.mm */; }; >+ 41ECEAC3206411E2009D5141 /* RTCVideoDecoderH264.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F81FE1987C00373E99 /* RTCVideoDecoderH264.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; >+ 41ECEAC4206411E5009D5141 /* RTCVideoEncoderH264.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F41FE1987B00373E99 /* RTCVideoEncoderH264.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; >+ 41ECEAC620641303009D5141 /* RTCCVPixelBuffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAC520641302009D5141 /* RTCCVPixelBuffer.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; >+ 41ECEAC820641328009D5141 /* RTCEncodedImage.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAC720641328009D5141 /* RTCEncodedImage.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; >+ 41ECEACB2064134F009D5141 /* RTCVideoFrame.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAC92064134E009D5141 /* RTCVideoFrame.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEACC2064134F009D5141 /* RTCVideoFrame+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEACA2064134E009D5141 /* RTCVideoFrame+Private.h */; }; > 41ECEACF20641370009D5141 /* RTCI420Buffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEACD2064136F009D5141 /* RTCI420Buffer.mm */; }; > 41ECEAD020641370009D5141 /* RTCI420Buffer+Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEACE2064136F009D5141 /* RTCI420Buffer+Private.h */; }; >- 41ECEAD320641458009D5141 /* objc_frame_buffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAD120641457009D5141 /* objc_frame_buffer.mm */; }; >+ 41ECEAD320641458009D5141 /* objc_frame_buffer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAD120641457009D5141 /* objc_frame_buffer.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEAD420641458009D5141 /* objc_frame_buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEAD220641458009D5141 /* objc_frame_buffer.h */; }; > 41ECEAD72064147C009D5141 /* helpers.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEAD52064147C009D5141 /* helpers.h */; }; > 41ECEAD82064147C009D5141 /* helpers.cc in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAD62064147C009D5141 /* helpers.cc */; }; >- 41ECEADA206414A6009D5141 /* RTCRtpFragmentationHeader.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAD9206414A6009D5141 /* RTCRtpFragmentationHeader.mm */; }; >- 41ECEADB206415EA009D5141 /* objc_video_decoder_factory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F91FE1987C00373E99 /* objc_video_decoder_factory.mm */; }; >- 41ECEADC206415EE009D5141 /* objc_video_encoder_factory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F51FE1987B00373E99 /* objc_video_encoder_factory.mm */; }; >+ 41ECEADA206414A6009D5141 /* RTCRtpFragmentationHeader.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAD9206414A6009D5141 /* RTCRtpFragmentationHeader.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; >+ 41ECEADB206415EA009D5141 /* objc_video_decoder_factory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F91FE1987C00373E99 /* objc_video_decoder_factory.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; >+ 41ECEADC206415EE009D5141 /* objc_video_encoder_factory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 413A23F51FE1987B00373E99 /* objc_video_encoder_factory.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEAE1206416FF009D5141 /* RTCWrappedNativeVideoEncoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEADD206416FD009D5141 /* RTCWrappedNativeVideoEncoder.h */; }; >- 41ECEAE2206416FF009D5141 /* RTCWrappedNativeVideoEncoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEADE206416FE009D5141 /* RTCWrappedNativeVideoEncoder.mm */; }; >+ 41ECEAE2206416FF009D5141 /* RTCWrappedNativeVideoEncoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEADE206416FE009D5141 /* RTCWrappedNativeVideoEncoder.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEAE3206416FF009D5141 /* RTCWrappedNativeVideoDecoder.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEADF206416FE009D5141 /* RTCWrappedNativeVideoDecoder.h */; }; >- 41ECEAE4206416FF009D5141 /* RTCWrappedNativeVideoDecoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAE0206416FE009D5141 /* RTCWrappedNativeVideoDecoder.mm */; }; >+ 41ECEAE4206416FF009D5141 /* RTCWrappedNativeVideoDecoder.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAE0206416FE009D5141 /* RTCWrappedNativeVideoDecoder.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEAE7206417E9009D5141 /* webrtcvideoencoderfactory.cc in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAE5206417E8009D5141 /* webrtcvideoencoderfactory.cc */; }; > 41ECEAE8206417E9009D5141 /* webrtcvideodecoderfactory.cc in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAE6206417E9009D5141 /* webrtcvideodecoderfactory.cc */; }; >- 41ECEAEA20641812009D5141 /* RTCVideoEncoderSettings.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAE920641812009D5141 /* RTCVideoEncoderSettings.mm */; }; >+ 41ECEAEA20641812009D5141 /* RTCVideoEncoderSettings.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAE920641812009D5141 /* RTCVideoEncoderSettings.mm */; settings = {COMPILER_FLAGS = "-fobjc-arc"; }; }; > 41ECEAFC20646664009D5141 /* EncoderUtilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEAF920646663009D5141 /* EncoderUtilities.h */; }; > 41ECEAFD20646664009D5141 /* VideoProcessingSoftLink.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 41ECEAFA20646663009D5141 /* VideoProcessingSoftLink.cpp */; }; > 41ECEAFE20646664009D5141 /* VideoProcessingSoftLink.h in Headers */ = {isa = PBXBuildFile; fileRef = 41ECEAFB20646664009D5141 /* VideoProcessingSoftLink.h */; };
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 185324
:
339594
|
339600
|
339746