Merge "avcenc: Fix indentation"
diff --git a/media/libstagefright/MediaCodec.cpp b/media/libstagefright/MediaCodec.cpp
index ff71170..d28322f 100644
--- a/media/libstagefright/MediaCodec.cpp
+++ b/media/libstagefright/MediaCodec.cpp
@@ -1118,7 +1118,8 @@
             CHECK(msg->senderAwaitsResponse(&replyID));
 
             if ((mState != STARTED && mState != FLUSHING)
-                    || (mFlags & kFlagStickyError)) {
+                    || (mFlags & kFlagStickyError)
+                    || mOutputFormat == NULL) {
                 sp<AMessage> response = new AMessage;
                 response->setInt32("err", INVALID_OPERATION);
 
diff --git a/media/libstagefright/codecs/avc/common/include/avcapi_common.h b/media/libstagefright/codecs/avc/common/include/avcapi_common.h
index 3331689..001c1a1 100644
--- a/media/libstagefright/codecs/avc/common/include/avcapi_common.h
+++ b/media/libstagefright/codecs/avc/common/include/avcapi_common.h
@@ -213,15 +213,15 @@
     memory usage.
 \param "size" "Size of requested memory in bytes."
 \param "attribute" "Some value specifying types, priority, etc. of the memory."
-\return "The address of the allocated memory casted to int"
+\return "The address of the allocated memory"
 */
-typedef int (*FunctionType_Malloc)(void *userData, int32 size, int attribute);
+typedef void* (*FunctionType_Malloc)(void *userData, int32 size, int attribute);
 
 /** Function pointer to free
-\param "mem" "Pointer to the memory to be freed casted to int"
+\param "mem" "Pointer to the memory to be freed"
 \return "void"
 */
-typedef void (*FunctionType_Free)(void *userData, int mem);
+typedef void (*FunctionType_Free)(void *userData, void *mem);
 
 /** Debug logging information is returned to the application thru this function.
 \param "type"   "Type of logging message, see definition of AVCLogType."
diff --git a/media/libstagefright/codecs/avc/common/src/dpb.cpp b/media/libstagefright/codecs/avc/common/src/dpb.cpp
index 2c4c7da..b5d0dfe 100644
--- a/media/libstagefright/codecs/avc/common/src/dpb.cpp
+++ b/media/libstagefright/codecs/avc/common/src/dpb.cpp
@@ -152,7 +152,7 @@
         framesize = (FrameHeightInMbs * PicWidthInMbs);
         if (video->mblock)
         {
-            avcHandle->CBAVC_Free(userData, (uint32)video->mblock);
+            avcHandle->CBAVC_Free(userData, video->mblock);
             video->mblock = NULL;
         }
         video->mblock = (AVCMacroblock*) avcHandle->CBAVC_Malloc(userData, sizeof(AVCMacroblock) * framesize, DEFAULT_ATTR);
@@ -187,7 +187,7 @@
 
         if (video->MbToSliceGroupMap)
         {
-            avcHandle->CBAVC_Free(userData, (uint32)video->MbToSliceGroupMap);
+            avcHandle->CBAVC_Free(userData, video->MbToSliceGroupMap);
             video->MbToSliceGroupMap = NULL;
         }
         video->MbToSliceGroupMap = (int*) avcHandle->CBAVC_Malloc(userData, sizeof(uint) * PicSizeInMapUnits * 2, 7/*DEFAULT_ATTR*/);
@@ -212,14 +212,14 @@
     {
         if (dpb->fs[ii] != NULL)
         {
-            avcHandle->CBAVC_Free(userData, (int)dpb->fs[ii]);
+            avcHandle->CBAVC_Free(userData, dpb->fs[ii]);
             dpb->fs[ii] = NULL;
         }
     }
 #ifndef PV_MEMORY_POOL
     if (dpb->decoded_picture_buffer)
     {
-        avcHandle->CBAVC_Free(userData, (int)dpb->decoded_picture_buffer);
+        avcHandle->CBAVC_Free(userData, dpb->decoded_picture_buffer);
         dpb->decoded_picture_buffer = NULL;
     }
 #endif
diff --git a/media/libstagefright/codecs/avc/enc/SoftAVCEncoder.cpp b/media/libstagefright/codecs/avc/enc/SoftAVCEncoder.cpp
index c6f658d..9fedace 100644
--- a/media/libstagefright/codecs/avc/enc/SoftAVCEncoder.cpp
+++ b/media/libstagefright/codecs/avc/enc/SoftAVCEncoder.cpp
@@ -131,13 +131,13 @@
     }
 }
 
-static int32_t MallocWrapper(
+static void* MallocWrapper(
         void *userData, int32_t size, int32_t attrs) {
-    return reinterpret_cast<int32_t>(malloc(size));
+    return malloc(size);
 }
 
-static void FreeWrapper(void *userData, int32_t ptr) {
-    free(reinterpret_cast<void *>(ptr));
+static void FreeWrapper(void *userData, void* ptr) {
+    free(ptr);
 }
 
 static int32_t DpbAllocWrapper(void *userData,
diff --git a/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp b/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp
index 6d43142..3631536 100644
--- a/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp
+++ b/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp
@@ -610,32 +610,32 @@
 
         if (encvid->functionPointer != NULL)
         {
-            avcHandle->CBAVC_Free(userData, (int)encvid->functionPointer);
+            avcHandle->CBAVC_Free(userData, encvid->functionPointer);
         }
 
         if (encvid->min_cost)
         {
-            avcHandle->CBAVC_Free(userData, (int)encvid->min_cost);
+            avcHandle->CBAVC_Free(userData, encvid->min_cost);
         }
 
         if (encvid->intraSearch)
         {
-            avcHandle->CBAVC_Free(userData, (int)encvid->intraSearch);
+            avcHandle->CBAVC_Free(userData, encvid->intraSearch);
         }
 
         if (encvid->mot16x16)
         {
-            avcHandle->CBAVC_Free(userData, (int)encvid->mot16x16);
+            avcHandle->CBAVC_Free(userData, encvid->mot16x16);
         }
 
         if (encvid->rateCtrl)
         {
-            avcHandle->CBAVC_Free(userData, (int)encvid->rateCtrl);
+            avcHandle->CBAVC_Free(userData, encvid->rateCtrl);
         }
 
         if (encvid->overrunBuffer)
         {
-            avcHandle->CBAVC_Free(userData, (int)encvid->overrunBuffer);
+            avcHandle->CBAVC_Free(userData, encvid->overrunBuffer);
         }
 
         video = encvid->common;
@@ -643,45 +643,45 @@
         {
             if (video->MbToSliceGroupMap)
             {
-                avcHandle->CBAVC_Free(userData, (int)video->MbToSliceGroupMap);
+                avcHandle->CBAVC_Free(userData, video->MbToSliceGroupMap);
             }
             if (video->mblock != NULL)
             {
-                avcHandle->CBAVC_Free(userData, (int)video->mblock);
+                avcHandle->CBAVC_Free(userData, video->mblock);
             }
             if (video->decPicBuf != NULL)
             {
                 CleanUpDPB(avcHandle, video);
-                avcHandle->CBAVC_Free(userData, (int)video->decPicBuf);
+                avcHandle->CBAVC_Free(userData, video->decPicBuf);
             }
             if (video->sliceHdr != NULL)
             {
-                avcHandle->CBAVC_Free(userData, (int)video->sliceHdr);
+                avcHandle->CBAVC_Free(userData, video->sliceHdr);
             }
             if (video->currPicParams != NULL)
             {
                 if (video->currPicParams->slice_group_id)
                 {
-                    avcHandle->CBAVC_Free(userData, (int)video->currPicParams->slice_group_id);
+                    avcHandle->CBAVC_Free(userData, video->currPicParams->slice_group_id);
                 }
 
-                avcHandle->CBAVC_Free(userData, (int)video->currPicParams);
+                avcHandle->CBAVC_Free(userData, video->currPicParams);
             }
             if (video->currSeqParams != NULL)
             {
-                avcHandle->CBAVC_Free(userData, (int)video->currSeqParams);
+                avcHandle->CBAVC_Free(userData, video->currSeqParams);
             }
             if (encvid->bitstream != NULL)
             {
-                avcHandle->CBAVC_Free(userData, (int)encvid->bitstream);
+                avcHandle->CBAVC_Free(userData, encvid->bitstream);
             }
             if (video != NULL)
             {
-                avcHandle->CBAVC_Free(userData, (int)video);
+                avcHandle->CBAVC_Free(userData, video);
             }
         }
 
-        avcHandle->CBAVC_Free(userData, (int)encvid);
+        avcHandle->CBAVC_Free(userData, encvid);
 
         avcHandle->AVCObject = NULL;
     }
diff --git a/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp b/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp
index 75ab514..ed9fd8e 100644
--- a/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp
+++ b/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp
@@ -276,7 +276,7 @@
                 if (encvid->overrunBuffer)
                 {
                     encvid->avcHandle->CBAVC_Free((uint32*)encvid->avcHandle->userData,
-                                                  (int)encvid->overrunBuffer);
+                                                  encvid->overrunBuffer);
                 }
 
                 encvid->oBSize = stream->oBSize;
@@ -315,7 +315,7 @@
             memcpy(encvid->overrunBuffer, stream->overrunBuffer, stream->write_pos);
             // free old buffer
             encvid->avcHandle->CBAVC_Free((uint32*)encvid->avcHandle->userData,
-                                          (int)stream->overrunBuffer);
+                                          stream->overrunBuffer);
 
             // assign pointer to new buffer
             stream->overrunBuffer = encvid->overrunBuffer;
diff --git a/media/libstagefright/codecs/avc/enc/src/motion_est.cpp b/media/libstagefright/codecs/avc/enc/src/motion_est.cpp
index f650ef9..00c56c8 100644
--- a/media/libstagefright/codecs/avc/enc/src/motion_est.cpp
+++ b/media/libstagefright/codecs/avc/enc/src/motion_est.cpp
@@ -176,7 +176,7 @@
 
     if (encvid->mvbits_array)
     {
-        avcHandle->CBAVC_Free(avcHandle->userData, (int)(encvid->mvbits_array));
+        avcHandle->CBAVC_Free(avcHandle->userData, encvid->mvbits_array);
         encvid->mvbits = NULL;
     }
 
diff --git a/media/libstagefright/codecs/avc/enc/src/rate_control.cpp b/media/libstagefright/codecs/avc/enc/src/rate_control.cpp
index 15b55fb..50b764f 100644
--- a/media/libstagefright/codecs/avc/enc/src/rate_control.cpp
+++ b/media/libstagefright/codecs/avc/enc/src/rate_control.cpp
@@ -300,7 +300,7 @@
 
     if (rateCtrl->MADofMB)
     {
-        avcHandle->CBAVC_Free(avcHandle->userData, (int)(rateCtrl->MADofMB));
+        avcHandle->CBAVC_Free(avcHandle->userData, rateCtrl->MADofMB);
     }
 
     if (rateCtrl->pMP)
@@ -311,12 +311,12 @@
             {
                 if (rateCtrl->pMP->pRDSamples[i])
                 {
-                    avcHandle->CBAVC_Free(avcHandle->userData, (int)rateCtrl->pMP->pRDSamples[i]);
+                    avcHandle->CBAVC_Free(avcHandle->userData, rateCtrl->pMP->pRDSamples[i]);
                 }
             }
-            avcHandle->CBAVC_Free(avcHandle->userData, (int)rateCtrl->pMP->pRDSamples);
+            avcHandle->CBAVC_Free(avcHandle->userData, rateCtrl->pMP->pRDSamples);
         }
-        avcHandle->CBAVC_Free(avcHandle->userData, (int)(rateCtrl->pMP));
+        avcHandle->CBAVC_Free(avcHandle->userData, rateCtrl->pMP);
     }
 
     return ;
diff --git a/services/camera/libcameraservice/CameraService.cpp b/services/camera/libcameraservice/CameraService.cpp
index bf07f8b..385be50 100644
--- a/services/camera/libcameraservice/CameraService.cpp
+++ b/services/camera/libcameraservice/CameraService.cpp
@@ -721,9 +721,9 @@
     Mutex::Autolock lock(mLock);
     if (checkPidAndHardware() != NO_ERROR) return;
 
-    mCameraService->playSound(SOUND_RECORDING);
     disableMsgType(CAMERA_MSG_VIDEO_FRAME);
     mHardware->stopRecording();
+    mCameraService->playSound(SOUND_RECORDING);
 
     mPreviewBuffer.clear();
 }