summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2019-10-11 20:46:49 +0200
committerGitHub <noreply@github.com>2019-10-11 20:46:49 +0200
commit74ab8be57a8ff1c3dd84d397e32470ed7a77a96f (patch)
tree40245d18299e02f907172f11fc1f9cb3ee94f2cb
parent3cc94b2c0b90ec1136937e2c02b9d7901d3d28b8 (diff)
parentd0f8ef76461ab3137b3445cbfcbbdc8e6f2b20c7 (diff)
Merge pull request #32752 from m4gr3d/clean_metadata_parsing_fix
Cleanup fix for the meta-data parsing crashing bug.
-rw-r--r--platform/android/export/export.cpp16
1 files changed, 4 insertions, 12 deletions
diff --git a/platform/android/export/export.cpp b/platform/android/export/export.cpp
index ab5cba04a2..a43f195b84 100644
--- a/platform/android/export/export.cpp
+++ b/platform/android/export/export.cpp
@@ -766,17 +766,9 @@ class EditorExportPlatformAndroid : public EditorExportPlatform {
uint32_t attr_value = decode_uint32(&p_manifest[iofs + 8]);
uint32_t attr_resid = decode_uint32(&p_manifest[iofs + 16]);
- String value;
- if (attr_value != 0xFFFFFFFF)
- value = string_table[attr_value];
- else
- value = "Res #" + itos(attr_resid);
+ const String value = (attr_value != 0xFFFFFFFF) ? string_table[attr_value] : "Res #" + itos(attr_resid);
String attrname = string_table[attr_name];
- String nspace;
- if (attr_nspace != 0xFFFFFFFF)
- nspace = string_table[attr_nspace];
- else
- nspace = "";
+ const String nspace = (attr_nspace != 0xFFFFFFFF) ? string_table[attr_nspace] : "";
//replace project information
if (tname == "manifest" && attrname == "package") {
@@ -830,14 +822,14 @@ class EditorExportPlatformAndroid : public EditorExportPlatform {
// FIXME: `attr_value != 0xFFFFFFFF` below added as a stopgap measure for GH-32553,
// but the issue should be debugged further and properly addressed.
- if (tname == "meta-data" && attrname == "name" && attr_value != 0xFFFFFFFF && string_table[attr_value] == "xr_mode_metadata_name") {
+ if (tname == "meta-data" && attrname == "name" && value == "xr_mode_metadata_name") {
// Update the meta-data 'android:name' attribute based on the selected XR mode.
if (xr_mode_index == 1 /* XRMode.OVR */) {
string_table.write[attr_value] = "com.samsung.android.vr.application.mode";
}
}
- if (tname == "meta-data" && attrname == "value" && attr_value != 0xFFFFFFFF && string_table[attr_value] == "xr_mode_metadata_value") {
+ if (tname == "meta-data" && attrname == "value" && value == "xr_mode_metadata_value") {
// Update the meta-data 'android:value' attribute based on the selected XR mode.
if (xr_mode_index == 1 /* XRMode.OVR */) {
string_table.write[attr_value] = "vr_only";