diff options
| author | Wei-Ta Chen <weita@google.com> | 2010-10-22 11:22:59 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-10-22 11:22:59 -0700 |
| commit | 50db92c452ece8d52d898d1ed289bbb3c43859ed (patch) | |
| tree | 6e5784366d1bfe6148cbd5b75f63caad50188f3a /core | |
| parent | dca9cd6dd00d2db74e26b500180c9b4516b3cb61 (diff) | |
| parent | 58c1579ce2634de31d24429c1b870d4256ee4f21 (diff) | |
| download | frameworks_base-50db92c452ece8d52d898d1ed289bbb3c43859ed.zip frameworks_base-50db92c452ece8d52d898d1ed289bbb3c43859ed.tar.gz frameworks_base-50db92c452ece8d52d898d1ed289bbb3c43859ed.tar.bz2 | |
Merge "Fix 3122139, where previewing an attachment for the second time will fail."
Diffstat (limited to 'core')
| -rw-r--r-- | core/jni/android/graphics/BitmapRegionDecoder.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/core/jni/android/graphics/BitmapRegionDecoder.cpp b/core/jni/android/graphics/BitmapRegionDecoder.cpp index f700791..bf18d55 100644 --- a/core/jni/android/graphics/BitmapRegionDecoder.cpp +++ b/core/jni/android/graphics/BitmapRegionDecoder.cpp @@ -65,6 +65,7 @@ static SkMemoryStream* buildSkMemoryStream(SkStream *stream) { } } data = (char*)sk_realloc_throw(data, streamLen); + SkMemoryStream* streamMem = new SkMemoryStream(); streamMem->setMemoryOwned(data, streamLen); return streamMem; @@ -133,6 +134,12 @@ static jobject nativeNewInstanceFromFileDescriptor(JNIEnv* env, jobject clazz, } stream = fdStream; } else { + /* Restore our offset when we leave, so we can be called more than once + with the same descriptor. This is only required if we didn't dup the + file descriptor, but it is OK to do it all the time. + */ + AutoFDSeek as(descriptor); + SkFDStream* fdStream = new SkFDStream(descriptor, false); if (!fdStream->isValid()) { fdStream->unref(); @@ -142,12 +149,6 @@ static jobject nativeNewInstanceFromFileDescriptor(JNIEnv* env, jobject clazz, fdStream->unref(); } - /* Restore our offset when we leave, so we can be called more than once - with the same descriptor. This is only required if we didn't dup the - file descriptor, but it is OK to do it all the time. - */ - AutoFDSeek as(descriptor); - return doBuildTileIndex(env, stream); } |
