diff --git a/src/uifc/uifc32.c b/src/uifc/uifc32.c
index 1f99feab4a5d1a8f3cf2baef7ba16f4613fd6e96..9880b805a4c0170e265c31a46e39b107e9347da8 100644
--- a/src/uifc/uifc32.c
+++ b/src/uifc/uifc32.c
@@ -1256,7 +1256,7 @@ static int ugetstr(char *outstr, int max, long mode)
 #endif
 		f=inkey(0);
 		gotoxy(wherex()-i,y);
-		if(f == CR || f >= 0xff)
+		if(f == CR || (f >= 0xff && f != KEY_DC))
 		{
 			cputs(outstr);
 		}