diff options
Diffstat (limited to 'drm/libmediadrm/ICrypto.cpp')
| -rw-r--r-- | drm/libmediadrm/ICrypto.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/drm/libmediadrm/ICrypto.cpp b/drm/libmediadrm/ICrypto.cpp index ee5ea936c4..a2594aa2d8 100644 --- a/drm/libmediadrm/ICrypto.cpp +++ b/drm/libmediadrm/ICrypto.cpp @@ -19,10 +19,10 @@ #include <binder/Parcel.h> #include <binder/IMemory.h> #include <cutils/log.h> -#include <media/ICrypto.h> #include <media/stagefright/MediaErrors.h> #include <media/stagefright/foundation/ADebug.h> #include <media/stagefright/foundation/AString.h> +#include <mediadrm/ICrypto.h> #include <utils/Log.h> namespace android { @@ -346,10 +346,10 @@ status_t BnCrypto::onTransact( return OK; } - CryptoPlugin::SubSample *subSamples = - new CryptoPlugin::SubSample[numSubSamples]; + std::unique_ptr<CryptoPlugin::SubSample[]> subSamples = + std::make_unique<CryptoPlugin::SubSample[]>(numSubSamples); - data.read(subSamples, + data.read(subSamples.get(), sizeof(CryptoPlugin::SubSample) * numSubSamples); DestinationBuffer destination; @@ -407,7 +407,7 @@ status_t BnCrypto::onTransact( result = -EINVAL; } else { result = decrypt(key, iv, mode, pattern, source, offset, - subSamples, numSubSamples, destination, &errorDetailMsg); + subSamples.get(), numSubSamples, destination, &errorDetailMsg); } reply->writeInt32(result); @@ -426,9 +426,7 @@ status_t BnCrypto::onTransact( } } - delete[] subSamples; - subSamples = NULL; - + subSamples.reset(); return OK; } |
