Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 43d65b69 authored by Jeff Sharkey's avatar Jeff Sharkey Committed by Android (Google) Code Review
Browse files

Merge "Escape single quotes in arguments." into lmp-dev

parents d9c4b14b d0eee747
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -675,7 +675,12 @@ static void status_window(transport_type ttype, const char* serial)
    }
}

/** Duplicate and escape given argument. */
static bool should_escape(const char c)
{
    return (c == ' ' || c == '\'' || c == '"' || c == '\\' || c == '(' || c == ')');
}

/* Duplicate and escape given argument. */
static char *escape_arg(const char *s)
{
    const char *ts;
@@ -686,7 +691,7 @@ static char *escape_arg(const char *s)
    alloc_len = 0;
    for (ts = s; *ts != '\0'; ts++) {
        alloc_len++;
        if (*ts == ' ' || *ts == '"' || *ts == '\\' || *ts == '(' || *ts == ')') {
        if (should_escape(*ts)) {
            alloc_len++;
        }
    }
@@ -704,7 +709,7 @@ static char *escape_arg(const char *s)
    dest = ret;

    for (ts = s; *ts != '\0'; ts++) {
        if (*ts == ' ' || *ts == '"' || *ts == '\\' || *ts == '(' || *ts == ')') {
        if (should_escape(*ts)) {
            *dest++ = '\\';
        }
        *dest++ = *ts;