summaryrefslogtreecommitdiffstats
path: root/cmds
diff options
context:
space:
mode:
authorJames Dong <jdong@google.com>2010-02-04 18:08:06 -0800
committerJames Dong <jdong@google.com>2010-02-04 18:11:32 -0800
commite4cfcb82a86e1546474c3fd25101ab561063a1bd (patch)
tree66b79cca30bd18ba9e56648567d35b330e364db7 /cmds
parent09922d855bd008f58214e4c1a905263129a924a3 (diff)
downloadframeworks_base-e4cfcb82a86e1546474c3fd25101ab561063a1bd.zip
frameworks_base-e4cfcb82a86e1546474c3fd25101ab561063a1bd.tar.gz
frameworks_base-e4cfcb82a86e1546474c3fd25101ab561063a1bd.tar.bz2
When the extractor is not able to be created successfully, don't crash
Diffstat (limited to 'cmds')
-rw-r--r--cmds/stagefright/record.cpp3
-rw-r--r--cmds/stagefright/stagefright.cpp4
2 files changed, 7 insertions, 0 deletions
diff --git a/cmds/stagefright/record.cpp b/cmds/stagefright/record.cpp
index 2ec0b70..845c854 100644
--- a/cmds/stagefright/record.cpp
+++ b/cmds/stagefright/record.cpp
@@ -106,6 +106,9 @@ sp<MediaSource> createSource(const char *filename) {
sp<MediaExtractor> extractor =
MediaExtractor::Create(new FileSource(filename));
+ if (extractor == NULL) {
+ return NULL;
+ }
size_t num_tracks = extractor->countTracks();
diff --git a/cmds/stagefright/stagefright.cpp b/cmds/stagefright/stagefright.cpp
index e65cdf1..f7cb227 100644
--- a/cmds/stagefright/stagefright.cpp
+++ b/cmds/stagefright/stagefright.cpp
@@ -431,6 +431,10 @@ int main(int argc, char **argv) {
mediaSource = new JPEGSource(dataSource);
} else {
sp<MediaExtractor> extractor = MediaExtractor::Create(dataSource);
+ if (extractor == NULL) {
+ fprintf(stderr, "could not create data source\n");
+ return -1;
+ }
size_t numTracks = extractor->countTracks();