libavb: Only query partition GUIDs when the cmdline needs them.

On devices using BOARD_AVB_VBMETA_MAINLINE, the kernel command line
should not contain the $(ANDROID_SYSTEM_PARTUUID) pattern, since the
device will be using an initial ramdisk for both normal boot and
recovery. Such a device will also not have system partition entries
in the GPT, and thus querying the GUID will fail.
In this case we want avb_sub_cmdline() to only query the partition GUID
if the search string is actually present.

Change-Id: I60f62fbac779bdb53df92e7f9c5040026c57d687
diff --git a/platform/msm_shared/avb/libavb/avb_slot_verify.c b/platform/msm_shared/avb/libavb/avb_slot_verify.c
index d83c87b..e0049e6 100644
--- a/platform/msm_shared/avb/libavb/avb_slot_verify.c
+++ b/platform/msm_shared/avb/libavb/avb_slot_verify.c
@@ -934,6 +934,14 @@
     char part_name[PART_NAME_MAX_SIZE];
     char guid_buf[37];
 
+    /* Don't attempt to query the partition guid unless its search string is
+     * present in the command line. Note: the original cmdline is used here,
+     * not the replaced one.
+     */
+    if (avb_strstr (cmdline, replace_str[n]) == NULL) {
+      continue;
+    }
+
     if (!avb_str_concat(part_name,
                         sizeof part_name,
                         part_name_str[n],