Fix flagging bug in VM ID allocation

mInstanceIdPath is null if llpvm_changes is disabled. Cope with this
while creating VirtualMachineDescriptor. Additionally, aosp/2956200
introduced a bug where appConfig.instanceImage was null if llpvm_changes
was disabled. Fix that.

Test: lunch aosp_cf_x86_64_phone-trunk-userdebug
Test: atest MicrodroidTests
Bug: 327261110
Bug: 327370574
Change-Id: I49079259081abd662265ff8121a710f1b57437a4
diff --git a/java/framework/src/android/system/virtualmachine/VirtualMachine.java b/java/framework/src/android/system/virtualmachine/VirtualMachine.java
index 9a38acf..a5c8062 100644
--- a/java/framework/src/android/system/virtualmachine/VirtualMachine.java
+++ b/java/framework/src/android/system/virtualmachine/VirtualMachine.java
@@ -852,11 +852,11 @@
                 VirtualMachineConfig vmConfig = getConfig();
                 VirtualMachineAppConfig appConfig =
                         vmConfig.toVsConfig(mContext.getPackageManager());
+                appConfig.instanceImage =
+                        ParcelFileDescriptor.open(mInstanceFilePath, MODE_READ_WRITE);
                 appConfig.name = mName;
                 if (mInstanceIdPath != null) {
                     appConfig.instanceId = Files.readAllBytes(mInstanceIdPath.toPath());
-                    appConfig.instanceImage =
-                            ParcelFileDescriptor.open(mInstanceFilePath, MODE_READ_WRITE);
                 } else {
                     // FEATURE_LLPVM_CHANGES is disabled, instance_id is not used.
                     appConfig.instanceId = new byte[64];
@@ -1298,7 +1298,9 @@
             try {
                 return new VirtualMachineDescriptor(
                         ParcelFileDescriptor.open(mConfigFilePath, MODE_READ_ONLY),
-                        ParcelFileDescriptor.open(mInstanceIdPath, MODE_READ_ONLY),
+                        mInstanceIdPath != null
+                                ? ParcelFileDescriptor.open(mInstanceIdPath, MODE_READ_ONLY)
+                                : null,
                         ParcelFileDescriptor.open(mInstanceFilePath, MODE_READ_ONLY),
                         mEncryptedStoreFilePath != null
                                 ? ParcelFileDescriptor.open(mEncryptedStoreFilePath, MODE_READ_ONLY)