diff options
author | Robert Shih <robertshih@google.com> | 2015-06-03 16:49:30 -0700 |
---|---|---|
committer | Robert Shih <robertshih@google.com> | 2015-06-05 18:24:16 -0700 |
commit | 2aa74dc097fe860abc84769abf2b6e0962718471 (patch) | |
tree | adad1804e8c7054c64efaf069b176110f547c115 /media/libstagefright/MPEG4Writer.cpp | |
parent | 4170eeec0a2dc2a9543b7e4674a43b3d2faac61d (diff) | |
download | frameworks_av-2aa74dc097fe860abc84769abf2b6e0962718471.zip frameworks_av-2aa74dc097fe860abc84769abf2b6e0962718471.tar.gz frameworks_av-2aa74dc097fe860abc84769abf2b6e0962718471.tar.bz2 |
MPEG4Writer: fail init check if output fd is not seekable
Bug: 12239375
Change-Id: Id1e23b3803f0ed48e4d1ad3ec4b84c4a39325ddd
Diffstat (limited to 'media/libstagefright/MPEG4Writer.cpp')
-rw-r--r-- | media/libstagefright/MPEG4Writer.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/media/libstagefright/MPEG4Writer.cpp b/media/libstagefright/MPEG4Writer.cpp index 95f361e..867ce0b 100644 --- a/media/libstagefright/MPEG4Writer.cpp +++ b/media/libstagefright/MPEG4Writer.cpp @@ -385,6 +385,13 @@ MPEG4Writer::MPEG4Writer(int fd) mStartTimeOffsetMs(-1), mMetaKeys(new AMessage()) { addDeviceMeta(); + + // Verify mFd is seekable + off64_t off = lseek64(mFd, 0, SEEK_SET); + if (off < 0) { + ALOGE("cannot seek mFd: %s (%d)", strerror(errno), errno); + release(); + } } MPEG4Writer::~MPEG4Writer() { |