diff options
author | Chris Craik <ccraik@android.com> | 2015-04-03 14:51:28 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-04-03 14:51:28 +0000 |
commit | 3b108af8b10f11a6186c130dcd1ab647369b1985 (patch) | |
tree | e1dd492aacd5956cbb432bc2dda7c7c60b0de717 /framesequence/jni/Registry.cpp | |
parent | d9e79df27877ea2b7bf55044f4bde687f28a6ac5 (diff) | |
parent | 315c8a384c4ca2a5670b9eed407caa5dea6c1ce0 (diff) | |
download | android_frameworks_ex-3b108af8b10f11a6186c130dcd1ab647369b1985.tar.gz android_frameworks_ex-3b108af8b10f11a6186c130dcd1ab647369b1985.tar.bz2 android_frameworks_ex-3b108af8b10f11a6186c130dcd1ab647369b1985.zip |
am 315c8a38: am d90222ba: Merge "Adding Bytebuffer support to rastermill library"
* commit '315c8a384c4ca2a5670b9eed407caa5dea6c1ce0':
Adding Bytebuffer support to rastermill library
Diffstat (limited to 'framesequence/jni/Registry.cpp')
-rw-r--r-- | framesequence/jni/Registry.cpp | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/framesequence/jni/Registry.cpp b/framesequence/jni/Registry.cpp index 125ac66..e632bb2 100644 --- a/framesequence/jni/Registry.cpp +++ b/framesequence/jni/Registry.cpp @@ -34,15 +34,26 @@ Registry::Registry(const RegistryEntry& entry) { const RegistryEntry* Registry::Find(Stream* stream) { Registry* registry = gHead; - int headerSize = gHeaderBytesRequired; - char header[headerSize]; - headerSize = stream->peek(header, headerSize); - while (registry) { - if (headerSize >= registry->mImpl.requiredHeaderBytes - && registry->mImpl.checkHeader(header, headerSize)) { - return &(registry->mImpl); + + if (stream->getRawBuffer() != NULL) { + while (registry) { + if (registry->mImpl.acceptsBuffer()) { + return &(registry->mImpl); + } + registry = registry->mNext; + } + } else { + int headerSize = gHeaderBytesRequired; + char header[headerSize]; + headerSize = stream->peek(header, headerSize); + while (registry) { + if (headerSize >= registry->mImpl.requiredHeaderBytes + && registry->mImpl.checkHeader(header, headerSize)) { + return &(registry->mImpl); + } + registry = registry->mNext; } - registry = registry->mNext; } return 0; } + |