[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 3/7] target-arm: default empty semihosting cmdline
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PULL 3/7] target-arm: default empty semihosting cmdline |
Date: |
Fri, 26 Jun 2015 14:31:19 +0100 |
From: Liviu Ionescu <address@hidden>
If neither explicit semihosting args nor -kernel are used,
make SYS_GET_CMDLINE return an empty string.
Signed-off-by: Liviu Ionescu <address@hidden>
Message-id: address@hidden
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
---
target-arm/arm-semi.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/target-arm/arm-semi.c b/target-arm/arm-semi.c
index 74a67e9..a2a7369 100644
--- a/target-arm/arm-semi.c
+++ b/target-arm/arm-semi.c
@@ -436,12 +436,19 @@ uint32_t do_arm_semihosting(CPUARMState *env)
size_t input_size;
size_t output_size;
int status = 0;
+#if !defined(CONFIG_USER_ONLY)
+ const char *cmdline;
+#endif
GET_ARG(0);
GET_ARG(1);
input_size = arg1;
/* Compute the size of the output string. */
#if !defined(CONFIG_USER_ONLY)
- output_size = strlen(semihosting_get_cmdline()) + 1;
+ cmdline = semihosting_get_cmdline();
+ if (cmdline == NULL) {
+ cmdline = ""; /* Default to an empty line. */
+ }
+ output_size = strlen(cmdline) + 1; /* Count terminating 0. */
#else
unsigned int i;
@@ -472,7 +479,7 @@ uint32_t do_arm_semihosting(CPUARMState *env)
/* Copy the command-line arguments. */
#if !defined(CONFIG_USER_ONLY)
- pstrcpy(output_buffer, output_size, semihosting_get_cmdline());
+ pstrcpy(output_buffer, output_size, cmdline);
#else
if (output_size == 1) {
/* Empty command-line. */
--
1.9.1
- [Qemu-devel] [PULL 0/7] target-arm queue, Peter Maydell, 2015/06/26
- [Qemu-devel] [PULL 4/7] target-arm: A64: Print ELR when taking exceptions, Peter Maydell, 2015/06/26
- [Qemu-devel] [PULL 5/7] qdev-properties-system: Change set_pointer's parse callback to use Error, Peter Maydell, 2015/06/26
- [Qemu-devel] [PULL 6/7] qdev-properties-system: Improve error message for drive assignment conflict, Peter Maydell, 2015/06/26
- [Qemu-devel] [PULL 7/7] hw/arm/virt: Make block devices default to virtio, Peter Maydell, 2015/06/26
- [Qemu-devel] [PULL 1/7] hw/arm/virt-acpi-build: Fix table revision and some comments, Peter Maydell, 2015/06/26
- [Qemu-devel] [PULL 3/7] target-arm: default empty semihosting cmdline,
Peter Maydell <=
- [Qemu-devel] [PULL 2/7] hw/arm/virt-acpi-build: Add GICv2m description in ACPI MADT table, Peter Maydell, 2015/06/26
- Re: [Qemu-devel] [PULL 0/7] target-arm queue, Peter Maydell, 2015/06/26