diff --git a/client/src/proxmark3.c b/client/src/proxmark3.c index c3f5de60a..eae7d7b84 100644 --- a/client/src/proxmark3.c +++ b/client/src/proxmark3.c @@ -280,7 +280,9 @@ check_script: } else { prompt = PROXPROMPT_OFFLINE; } - cmd = readline(prompt); + char prompt_filtered[PROXPROMPT_MAX_SIZE] = {0}; + memcpy_filter_ansi(prompt_filtered, prompt, sizeof(prompt_filtered), !session.supports_colors); + cmd = readline(prompt_filtered); fflush(NULL); } } diff --git a/client/src/proxmark3.h b/client/src/proxmark3.h index 015b34ec3..313e87edf 100644 --- a/client/src/proxmark3.h +++ b/client/src/proxmark3.h @@ -22,6 +22,8 @@ #define PROXPROMPT_OFFLINE "[" _BOLD_RED_("offline") "] pm3 --> " +#define PROXPROMPT_MAX_SIZE sizeof(PROXPROMPT_OFFLINE) + #define PROXHISTORY "history.txt" #define PROXLOG "log_%Y%m%d.txt" #define MAX_NESTED_CMDSCRIPT 10