Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(836)

Unified Diff: media/webm/webm_stream_parser.cc

Issue 10826098: Use std::string for decryption key ID in webm parser. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/webm/webm_content_encodings_client_unittest.cc ('k') | media/webm/webm_tracks_parser.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/webm/webm_stream_parser.cc
diff --git a/media/webm/webm_stream_parser.cc b/media/webm/webm_stream_parser.cc
index 5119d1efad300e24bdb70d4ee3a7e76fbe8b02af..db990cd408a7f8033c3cca1d2be623e5576e5d52 100644
--- a/media/webm/webm_stream_parser.cc
+++ b/media/webm/webm_stream_parser.cc
@@ -4,6 +4,8 @@
#include "media/webm/webm_stream_parser.h"
+#include <string>
+
#include "base/callback.h"
#include "base/logging.h"
#include "media/ffmpeg/ffmpeg_common.h"
@@ -357,21 +359,21 @@ int WebMStreamParser::ParseInfoAndTracks(const uint8* data, int size) {
}
// TODO(xhwang): Support decryption of audio (see http://crbug.com/123421).
- if (tracks_parser.video_encryption_key_id()) {
- int key_id_size = tracks_parser.video_encryption_key_id_size();
+ if (!tracks_parser.video_encryption_key_id().empty()) {
+ std::string key_id = tracks_parser.video_encryption_key_id();
+ int key_id_size = key_id.size();
CHECK_GT(key_id_size, 0);
CHECK_LT(key_id_size, 2048);
- scoped_array<uint8> key_id(new uint8[key_id_size]);
- memcpy(key_id.get(), tracks_parser.video_encryption_key_id(), key_id_size);
- need_key_cb_.Run(key_id.Pass(), key_id_size);
+ scoped_array<uint8> key_id_array(new uint8[key_id_size]);
+ memcpy(key_id_array.get(), key_id.data(), key_id_size);
+ need_key_cb_.Run(key_id_array.Pass(), key_id_size);
}
cluster_parser_.reset(new WebMClusterParser(
info_parser.timecode_scale(),
tracks_parser.audio_track_num(),
tracks_parser.video_track_num(),
- tracks_parser.video_encryption_key_id(),
- tracks_parser.video_encryption_key_id_size()));
+ tracks_parser.video_encryption_key_id()));
ChangeState(kParsingClusters);
« no previous file with comments | « media/webm/webm_content_encodings_client_unittest.cc ('k') | media/webm/webm_tracks_parser.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698