diff options
author | Chris Craik <ccraik@android.com> | 2015-04-02 22:55:19 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-04-02 22:55:19 +0000 |
commit | 315c8a384c4ca2a5670b9eed407caa5dea6c1ce0 (patch) | |
tree | 83290b350f7b0e75a256d64d50a331b36b42f991 /framesequence/jni/Registry.cpp | |
parent | 25a2979c374bda4f4aa26b26bc72a28fa55f38cf (diff) | |
parent | d90222baefb107ddc08d024b02d664d18f50f44f (diff) | |
download | android_frameworks_ex-315c8a384c4ca2a5670b9eed407caa5dea6c1ce0.tar.gz android_frameworks_ex-315c8a384c4ca2a5670b9eed407caa5dea6c1ce0.tar.bz2 android_frameworks_ex-315c8a384c4ca2a5670b9eed407caa5dea6c1ce0.zip |
am d90222ba: Merge "Adding Bytebuffer support to rastermill library"
* commit 'd90222baefb107ddc08d024b02d664d18f50f44f':
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; } + |