QCamera2: fix bug for noDisplay mode stream buf allocation

NoDisplay mode preview stream buffers should be allocated from
ION heap instead of from Gralloc.

Change-Id: I7bfa7bc13a025b53936ef91cdf00e18e0b223eed
diff --git a/camera/QCamera2/HAL/QCamera2HWI.cpp b/camera/QCamera2/HAL/QCamera2HWI.cpp
index e84b47f..42e508e 100644
--- a/camera/QCamera2/HAL/QCamera2HWI.cpp
+++ b/camera/QCamera2/HAL/QCamera2HWI.cpp
@@ -1344,15 +1344,31 @@
     // Allocate stream buffer memory object
     switch (stream_type) {
     case CAM_STREAM_TYPE_PREVIEW:
-    case CAM_STREAM_TYPE_POSTVIEW: {
-        cam_dimension_t dim;
-        QCameraGrallocMemory *grallocMemory = new QCameraGrallocMemory(mGetMemory);
+        {
+            if (isNoDisplayMode()) {
+                mem = new QCameraStreamMemory(mGetMemory);
+            } else {
+                cam_dimension_t dim;
+                QCameraGrallocMemory *grallocMemory = new QCameraGrallocMemory(mGetMemory);
 
-        mParameters.getStreamDimension(stream_type, dim);
-        if (grallocMemory)
-            grallocMemory->setWindowInfo(mPreviewWindow, dim.width, dim.height,
-                    mParameters.getPreviewHalPixelFormat());
-        mem = grallocMemory;
+                mParameters.getStreamDimension(stream_type, dim);
+                if (grallocMemory)
+                    grallocMemory->setWindowInfo(mPreviewWindow, dim.width, dim.height,
+                            mParameters.getPreviewHalPixelFormat());
+                mem = grallocMemory;
+            }
+        }
+        break;
+    case CAM_STREAM_TYPE_POSTVIEW:
+        {
+            cam_dimension_t dim;
+            QCameraGrallocMemory *grallocMemory = new QCameraGrallocMemory(mGetMemory);
+
+            mParameters.getStreamDimension(stream_type, dim);
+            if (grallocMemory)
+                grallocMemory->setWindowInfo(mPreviewWindow, dim.width, dim.height,
+                        mParameters.getPreviewHalPixelFormat());
+            mem = grallocMemory;
         }
         break;
     case CAM_STREAM_TYPE_SNAPSHOT:
@@ -1439,8 +1455,10 @@
 
     //set flip mode based on Stream type;
     int flipMode = mParameters.getFlipMode(stream_type);
-    streamInfo->pp_config.feature_mask |= CAM_QCOM_FEATURE_FLIP;
-    streamInfo->pp_config.flip = flipMode;
+    if (flipMode > 0) {
+        streamInfo->pp_config.feature_mask |= CAM_QCOM_FEATURE_FLIP;
+        streamInfo->pp_config.flip = flipMode;
+    }
 
     // set Rotation if need online rotation per stream in CPP
     if (needOnlineRotation()) {