From 767a83a45555cfce92aaa6ba6e667eb8c5dce5de Mon Sep 17 00:00:00 2001 From: Mikhail Khodjaiants Date: Tue, 13 Aug 2013 16:16:58 -0400 Subject: [PATCH] Bug 415006 - Incorrect handling of empty string as program argument in debug mode (CDI) --- .../debug/mi/core/command/MIExecArguments.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java index b92ac6141dd..68b30ee5fde 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java +++ b/debug/org.eclipse.cdt.debug.mi.core/mi/org/eclipse/cdt/debug/mi/core/command/MIExecArguments.java @@ -22,6 +22,19 @@ package org.eclipse.cdt.debug.mi.core.command; public class MIExecArguments extends MICommand { public MIExecArguments(String miVersion, String[] args) { - super(miVersion, "-exec-arguments", args); //$NON-NLS-1$ + super(miVersion, "-exec-arguments", processArguments(args)); //$NON-NLS-1$ + } + + private static String[] processArguments(String[] args) { + String[] result = new String[args.length]; + for (int i = 0; i < result.length; ++i) { + if (args[i].isEmpty()) { + result[i] = "''"; //$NON-NLS-1$ + } + else { + result[i] = args[i]; + } + } + return result; } }