summaryrefslogtreecommitdiffstats
path: root/src/pulse
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-05-25 23:50:18 +0200
committerLennart Poettering <lennart@poettering.net>2009-05-25 23:50:18 +0200
commit261a4830fb28f7ae690176cdfbe21607d27d9bcb (patch)
treeb6dc6be0066d26f466941ec932204cd3dd6ef2fd /src/pulse
parent346a708c2c079e646ced407ea15b1475ae9129ad (diff)
sample: introduce pa_proplist_setp()
Diffstat (limited to 'src/pulse')
-rw-r--r--src/pulse/proplist.c15
-rw-r--r--src/pulse/proplist.h8
2 files changed, 23 insertions, 0 deletions
diff --git a/src/pulse/proplist.c b/src/pulse/proplist.c
index db4c9344..c904f533 100644
--- a/src/pulse/proplist.c
+++ b/src/pulse/proplist.c
@@ -140,6 +140,21 @@ static int proplist_setn(pa_proplist *p, const char *key, size_t key_length, con
return 0;
}
+/** Will accept only valid UTF-8 */
+int pa_proplist_setp(pa_proplist *p, const char *pair) {
+ const char *t;
+
+ pa_assert(p);
+ pa_assert(pair);
+
+ if (!(t = strchr(pair, '=')))
+ return -1;
+
+ return proplist_setn(p,
+ pair, t - pair,
+ t + 1, strchr(pair, 0) - t - 1);
+}
+
static int proplist_sethex(pa_proplist *p, const char *key, size_t key_length, const char *value, size_t value_length) {
struct property *prop;
pa_bool_t add = FALSE;
diff --git a/src/pulse/proplist.h b/src/pulse/proplist.h
index 2e7e5ad0..7d680d06 100644
--- a/src/pulse/proplist.h
+++ b/src/pulse/proplist.h
@@ -234,6 +234,14 @@ int pa_proplist_sets(pa_proplist *p, const char *key, const char *value);
/** Append a new string entry to the property list, possibly
* overwriting an already existing entry with the same key. An
* internal copy of the data passed is made. Will accept only valid
+ * UTF-8. The string passed in must contain a '='. Left hand side of
+ * the '=' is used as key name, the right hand side as string
+ * data. \since 0.9.16 */
+int pa_proplist_setp(pa_proplist *p, const char *pair);
+
+/** Append a new string entry to the property list, possibly
+ * overwriting an already existing entry with the same key. An
+ * internal copy of the data passed is made. Will accept only valid
* UTF-8. The data can be passed as printf()-style format string with
* arguments. \since 0.9.11 */
int pa_proplist_setf(pa_proplist *p, const char *key, const char *format, ...) PA_GCC_PRINTF_ATTR(3,4);