summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/pulsecore/strlist.c15
-rw-r--r--src/pulsecore/strlist.h3
2 files changed, 18 insertions, 0 deletions
diff --git a/src/pulsecore/strlist.c b/src/pulsecore/strlist.c
index 792af0ff..ac83f6b1 100644
--- a/src/pulsecore/strlist.c
+++ b/src/pulsecore/strlist.c
@@ -146,3 +146,18 @@ pa_strlist* pa_strlist_parse(const char *s) {
return head;
}
+
+pa_strlist *pa_strlist_reverse(pa_strlist *l) {
+ pa_strlist *r = NULL;
+
+ while (l) {
+ pa_strlist *n;
+
+ n = l->next;
+ l->next = r;
+ r = l;
+ l = n;
+ }
+
+ return r;
+}
diff --git a/src/pulsecore/strlist.h b/src/pulsecore/strlist.h
index 96ad47e2..6e6e2d4a 100644
--- a/src/pulsecore/strlist.h
+++ b/src/pulsecore/strlist.h
@@ -46,4 +46,7 @@ pa_strlist* pa_strlist_pop(pa_strlist *l, char **s);
/* Parse a whitespace separated server list */
pa_strlist* pa_strlist_parse(const char *s);
+/* Reverse string list */
+pa_strlist *pa_strlist_reverse(pa_strlist *l);
+
#endif