diff options
| author | Daniel Mack <daniel@caiaq.de> | 2009-10-08 14:19:47 +0800 | 
|---|---|---|
| committer | Daniel Mack <daniel@caiaq.de> | 2009-10-08 14:19:47 +0800 | 
| commit | 0b388bff522f689fdb4d98529a39f3701db57c08 (patch) | |
| tree | 837b4fb0993078a708dfddb5801220e44a711d32 /src/pulsecore/core-util.c | |
| parent | 94aa9097f4ded68623160d754a4bf2632b8efc79 (diff) | |
| parent | 8ec304d2d1e956cc3f5f35437ac4fe580b36f004 (diff) | |
Merge branch 'master' of git://0pointer.de/pulseaudio
Diffstat (limited to 'src/pulsecore/core-util.c')
| -rw-r--r-- | src/pulsecore/core-util.c | 22 | 
1 files changed, 22 insertions, 0 deletions
| diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c index 8e98e857..27e09cbc 100644 --- a/src/pulsecore/core-util.c +++ b/src/pulsecore/core-util.c @@ -2678,6 +2678,28 @@ char *pa_replace(const char*s, const char*a, const char *b) {      return pa_strbuf_tostring_free(sb);  } +char *pa_escape(const char *p, const char *chars) { +    const char *s; +    const char *c; +    pa_strbuf *buf = pa_strbuf_new(); + +    for (s = p; *s; ++s) { +        if (*s == '\\') +            pa_strbuf_putc(buf, '\\'); +        else if (chars) { +            for (c = chars; *c; ++c) { +                if (*s == *c) { +                    pa_strbuf_putc(buf, '\\'); +                    break; +                } +            } +        } +        pa_strbuf_putc(buf, *s); +    } + +    return pa_strbuf_tostring_free(buf); +} +  char *pa_unescape(char *p) {      char *s, *d;      pa_bool_t escaped = FALSE; | 
