diff options
author | Drew DeVault <sir@cmpwn.com> | 2015-11-22 09:18:20 -0500 |
---|---|---|
committer | Drew DeVault <sir@cmpwn.com> | 2015-11-22 09:18:20 -0500 |
commit | 7bd82a26b00f2ad57563bee55a098f97c52421f3 (patch) | |
tree | 793b93d9df55478856a9d6dda7d99d3f8bd7d0e7 /common | |
parent | 56e80c0f73a9891c50d30ea8f53630fb112f3d23 (diff) | |
parent | 5531dbe1b2026a88670c812d40f0efccb4b52c7f (diff) | |
download | sway-7bd82a26b00f2ad57563bee55a098f97c52421f3.tar.xz |
Merge pull request #245 from sce/workspace_output_duplicates
Fix `workspace_output` duplicates
Diffstat (limited to 'common')
-rw-r--r-- | common/list.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/common/list.c b/common/list.c index 45efc16f..310296d8 100644 --- a/common/list.c +++ b/common/list.c @@ -53,3 +53,13 @@ void list_cat(list_t *list, list_t *source) { void list_sort(list_t *list, int compare(const void *left, const void *right)) { qsort(list->items, list->length, sizeof(void *), compare); } + +int list_seq_find(list_t *list, int compare(const void *item, const void *data), const void *data) { + for (int i = 0; i < list->length; i++) { + void *item = list->items[i]; + if (compare(item, data) == 0) { + return i; + } + } + return -1; +} |