From d5fb24d46953d6b6b75af6cdd25cf48051194e0b Mon Sep 17 00:00:00 2001
From: OSBotify <76178356+OSBotify@users.noreply.github.com>
Date: Mon, 17 Jan 2022 05:15:07 -0800
Subject: [PATCH 1/2] Merge pull request #7278 from
 Expensify/version-BUILD-e63788dfb58286a8b6f3db4206867d1bf7c984e6

(cherry picked from commit 5917d660c3d45359f62759e53440c7015fca025a)
---
 android/app/build.gradle         | 4 ++--
 ios/NewExpensify/Info.plist      | 2 +-
 ios/NewExpensifyTests/Info.plist | 2 +-
 package-lock.json                | 2 +-
 package.json                     | 2 +-
 5 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/android/app/build.gradle b/android/app/build.gradle
index 202f348aaf61..7e87ac547cd2 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -152,8 +152,8 @@ android {
         minSdkVersion rootProject.ext.minSdkVersion
         targetSdkVersion rootProject.ext.targetSdkVersion
         multiDexEnabled rootProject.ext.multiDexEnabled
-        versionCode 1001013000
-        versionName "1.1.30-0"
+        versionCode 1001013001
+        versionName "1.1.30-1"
     }
     splits {
         abi {
diff --git a/ios/NewExpensify/Info.plist b/ios/NewExpensify/Info.plist
index ea2814c86c46..4ec8fb8761a8 100644
--- a/ios/NewExpensify/Info.plist
+++ b/ios/NewExpensify/Info.plist
@@ -31,7 +31,7 @@
 		</dict>
 	</array>
 	<key>CFBundleVersion</key>
-	<string>1.1.30.0</string>
+	<string>1.1.30.1</string>
 	<key>ITSAppUsesNonExemptEncryption</key>
 	<false/>
 	<key>LSApplicationQueriesSchemes</key>
diff --git a/ios/NewExpensifyTests/Info.plist b/ios/NewExpensifyTests/Info.plist
index 7ed2d6998946..8a868a44119e 100644
--- a/ios/NewExpensifyTests/Info.plist
+++ b/ios/NewExpensifyTests/Info.plist
@@ -19,6 +19,6 @@
 	<key>CFBundleSignature</key>
 	<string>????</string>
 	<key>CFBundleVersion</key>
-	<string>1.1.30.0</string>
+	<string>1.1.30.1</string>
 </dict>
 </plist>
diff --git a/package-lock.json b/package-lock.json
index 058bc2481c89..546582a66480 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
 {
   "name": "new.expensify",
-  "version": "1.1.30-0",
+  "version": "1.1.30-1",
   "lockfileVersion": 1,
   "requires": true,
   "dependencies": {
diff --git a/package.json b/package.json
index 63475d25ab70..0ce3652d6b91 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "new.expensify",
-  "version": "1.1.30-0",
+  "version": "1.1.30-1",
   "author": "Expensify, Inc.",
   "homepage": "https://new.expensify.com",
   "description": "New Expensify is the next generation of Expensify: a reimagination of payments based atop a foundation of chat.",

From 974bd5c1a1864c66e73deda567a0e656d441aeb6 Mon Sep 17 00:00:00 2001
From: Vit Horacek <36083550+mountiny@users.noreply.github.com>
Date: Mon, 17 Jan 2022 13:12:22 +0000
Subject: [PATCH 2/2] Merge pull request #7277 from
 kidroca/kidroca/android-document-picker-fix

[CP Staging] Fix document upload on Android

(cherry picked from commit e63788dfb58286a8b6f3db4206867d1bf7c984e6)
---
 src/components/AttachmentPicker/index.native.js | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/components/AttachmentPicker/index.native.js b/src/components/AttachmentPicker/index.native.js
index 0b56964d4eea..15cd8f4bba52 100644
--- a/src/components/AttachmentPicker/index.native.js
+++ b/src/components/AttachmentPicker/index.native.js
@@ -71,6 +71,13 @@ function getDataForUpload(fileData) {
         size: fileData.fileSize || fileData.size,
     };
 
+    // When the URI is lacking uri scheme - file upload would fail
+    // Prefixing the uri with `file://` fixes attachment upload on Android
+    const hasScheme = /^.+:\/\//.test(fileResult.uri);
+    if (!hasScheme) {
+        fileResult.uri = `file://${fileResult.uri}`;
+    }
+
     if (fileResult.size) {
         return Promise.resolve(fileResult);
     }
@@ -198,7 +205,6 @@ class AttachmentPicker extends Component {
                     return reject(new Error(`Error during attachment selection: ${response.errorMessage}`));
                 }
 
-                // Resolve with the first (and only) selected file
                 return resolve(response.assets);
             });
         });
