recovery: Workaround to enable update via sdcard on UFS devices.

The recovery code relies on the recovery.fstab file to locate the
block dev that represents the external sdcard. The dev path is
differrent for UFS and EMMC devices but we can only have a single
entry for both in the fstab.

Since our build is required to support both UFS and EMMC devices
from the same binaries we make this change where recovery when it
sees a request for a update from a sdcard, checks if it is running
on a UFS based target and then does the mount on the correct device.

This is a temporary needed only on builds where we need to support
both UFS and EMMC devices. In practice only one of these will be
present on a device and the recovery.fstab can be updated accordingly.

Change-Id: I28aa99c69c31aa4cfe01bf6854de78b170d75bdb
diff --git a/install.cpp b/install.cpp
index 0860d85..8f327dd 100644
--- a/install.cpp
+++ b/install.cpp
@@ -426,9 +426,11 @@
     } else {
         LOGE("failed to open last_install: %s\n", strerror(errno));
     }
-    int result;
+    int result = 0;
     std::vector<std::string> log_buffer;
-    if (setup_install_mounts() != 0) {
+    if (needs_mount == true)
+            result = setup_install_mounts();
+    if (result != 0) {
         LOGE("failed to set up expected mounts for install; aborting\n");
         result = INSTALL_ERROR;
     } else {