Pass-by-reference instead of value to initWithNativeEncodedImage

Previously, the use of pass-by-value caused an issue in
ObjCVideoDecoder::Decode, where the EncodedImage was being copied upon
calling initWithNativeEncodedImage, which then created an NSData using
the copy's pointer; then the copy was destroyed, invalidating that
pointer.

Bug: webrtc:9378
Change-Id: Iac28b890c9902108ffc5ec54a607a99034159153
Reviewed-on: https://webrtc-review.googlesource.com/c/121922
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26598}
This commit is contained in:
Dillon Cower
2019-02-07 16:17:43 -08:00
committed by Commit Bot
parent 108f20fd45
commit 5963fddac2
2 changed files with 3 additions and 3 deletions

View File

@ -17,7 +17,7 @@ NS_ASSUME_NONNULL_BEGIN
/* Interfaces for converting to/from internal C++ formats. */
@interface RTCEncodedImage (Private)
- (instancetype)initWithNativeEncodedImage:(webrtc::EncodedImage)encodedImage;
- (instancetype)initWithNativeEncodedImage:(const webrtc::EncodedImage &)encodedImage;
- (webrtc::EncodedImage)nativeEncodedImage;
@end