aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTao Wu <lepton@google.com>2016-11-28 06:56:14 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2016-11-28 06:56:14 +0000
commit8ef9935fa3f459acbbb6abbf33c0b6eb0fc3f157 (patch)
tree3bb2fe2de1415c9c1b847a8c56c0f8b761b7c90c
parent70d6c81b1ef29a0f08d6336db6d8380cf89c577a (diff)
parentd4de1007e84653d16f7bfff084b681c6b608f485 (diff)
downloadqemu-android-8ef9935fa3f459acbbb6abbf33c0b6eb0fc3f157.tar.gz
Merge "Also merge user provided append args." into emu-master-dev
-rwxr-xr-xandroid-qemu2-glue/main.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/android-qemu2-glue/main.cpp b/android-qemu2-glue/main.cpp
index 46ce70596d..96f8374b4c 100755
--- a/android-qemu2-glue/main.cpp
+++ b/android-qemu2-glue/main.cpp
@@ -801,9 +801,6 @@ extern "C" int main(int argc, char **argv) {
return 1;
}
- args[n++] = "-append";
- args[n++] = kernel_parameters;
-
// Support for changing default lcd-density
std::string lcd_density;
if (hw->hw_lcd_density) {
@@ -890,9 +887,19 @@ extern "C" int main(int argc, char **argv) {
}
/* append the options after -qemu */
+ std::string append_arg(kernel_parameters);
+ free(kernel_parameters);
for (int i = 0; i < argc; ++i) {
- args[n++] = argv[i];
+ if (!strcmp(argv[i], "-append")) {
+ if (++i < argc) {
+ android::base::StringAppendFormat(&append_arg, " %s", argv[i]);
+ }
+ } else {
+ args[n++] = argv[i];
+ }
}
+ args[n++] = "-append";
+ args[n++] = ASTRDUP(append_arg.c_str());
/* Generate a hardware-qemu.ini for this AVD. The real hardware
* configuration is ususally stored in several files, e.g. the AVD's