From c7e6c5ec4b3baaca7a761e505037e79d52ceca7d Mon Sep 17 00:00:00 2001 From: Markus Bohr Date: Wed, 11 Mar 2015 12:14:17 +0100 Subject: [PATCH] Bug 460766 dot between day and month, or month and year in ddMMyy Format can be removed, corrupting the input field Change-Id: Ib793ce3899478fb82e5e24c0ae3cdb566bba1726 Signed-off-by: Markus Bohr --- .../nebula/widgets/formattedtext/DateTimeFormatter.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/widgets/formattedtext/org.eclipse.nebula.widgets.formattedtext/src/org/eclipse/nebula/widgets/formattedtext/DateTimeFormatter.java b/widgets/formattedtext/org.eclipse.nebula.widgets.formattedtext/src/org/eclipse/nebula/widgets/formattedtext/DateTimeFormatter.java index 5b10f4297..d4714cf2e 100644 --- a/widgets/formattedtext/org.eclipse.nebula.widgets.formattedtext/src/org/eclipse/nebula/widgets/formattedtext/DateTimeFormatter.java +++ b/widgets/formattedtext/org.eclipse.nebula.widgets.formattedtext/src/org/eclipse/nebula/widgets/formattedtext/DateTimeFormatter.java @@ -375,7 +375,8 @@ private void clear(int b, int e) { continue; } field = getField(i, from); - while ( i < e && field.curLen > 0 ) { + final int numCharsLeftOfRangeToClear= i-field.pos; + while ( i < e && field.curLen - numCharsLeftOfRangeToClear > 0 ) { inputCache.deleteCharAt(i); inputMask.deleteCharAt(i); e--;