Explorar el Código

Escape backslashes within args

Serj Kalichev hace 7 años
padre
commit
995e0e0d8f
Se han modificado 1 ficheros con 2 adiciones y 1 borrados
  1. 2 1
      clish/shell/shell_parse.c

+ 2 - 1
clish/shell/shell_parse.c

@@ -298,7 +298,8 @@ clish_pargv_status_e clish_shell_parse_pargv(clish_pargv_t *pargv,
 				lub_string_cat(&args, "\"");
 			}
 			/* place the current argument in the string */
-			enc = lub_string_encode(arg, "\"");
+			/* Escape quote and backslash */
+			enc = lub_string_encode(arg, lub_string_esc_quoted);
 			lub_string_cat(&args, enc);
 			lub_string_free(enc);
 			if (BOOL_TRUE == quoted) {