OSDN Git Service

am 432ed3d6: Merge "libstagefright: fix 64-bit warnings"
authorMark Salyzyn <salyzyn@google.com>
Tue, 15 Apr 2014 14:33:48 +0000 (14:33 +0000)
committerAndroid Git Automerger <android-git-automerger@android.com>
Tue, 15 Apr 2014 14:33:48 +0000 (14:33 +0000)
* commit '432ed3d66d09464778df31c73374ee897f7b8840':
  libstagefright: fix 64-bit warnings

1  2 
media/libstagefright/httplive/LiveSession.cpp
media/libstagefright/httplive/PlaylistFetcher.cpp
media/libstagefright/matroska/MatroskaExtractor.cpp
media/libstagefright/mpeg2ts/ATSParser.cpp
media/libstagefright/mpeg2ts/ESQueue.cpp

  #include <media/stagefright/MetaData.h>
  #include <media/stagefright/Utils.h>
  
 +#include <utils/Mutex.h>
 +
  #include <ctype.h>
+ #include <inttypes.h>
  #include <openssl/aes.h>
  #include <openssl/md5.h>
  
@@@ -672,23 -554,16 +673,23 @@@ ssize_t LiveSession::fetchFile
          size = 65536;
      }
  
 -    sp<ABuffer> buffer = new ABuffer(size);
 -    buffer->setRange(0, 0);
 +    sp<ABuffer> buffer = *out != NULL ? *out : new ABuffer(size);
 +    if (*out == NULL) {
 +        buffer->setRange(0, 0);
 +    }
  
 +    ssize_t bytesRead = 0;
 +    // adjust range_length if only reading partial block
 +    if (block_size > 0 && (range_length == -1 || buffer->size() + block_size < range_length)) {
 +        range_length = buffer->size() + block_size;
 +    }
      for (;;) {
 +        // Only resize when we don't know the size.
          size_t bufferRemaining = buffer->capacity() - buffer->size();
 -
 -        if (bufferRemaining == 0) {
 +        if (bufferRemaining == 0 && getSizeErr != OK) {
              bufferRemaining = 32768;
  
-             ALOGV("increasing download buffer to %d bytes",
+             ALOGV("increasing download buffer to %zu bytes",
                   buffer->size() + bufferRemaining);
  
              sp<ABuffer> copy = new ABuffer(buffer->size() + bufferRemaining);