added IRC Client and RAW pass-through
[TransparentIRC.git] / src / tools.c
index 5a26b192382c690d35260e723cd31839faf22c25..8316e01303ba3d570fd50b8f2fe9ce2b59539fed 100644 (file)
@@ -138,3 +138,27 @@ int run_external_process(char *command, char **parameters) { //win32 incompatibl
     }
 }
 
+char* merge_argv(char **argv, int start, int end) {
+    return merge_argv_char(argv, start, end, ' ');
+}
+
+char* merge_argv_char(char **argv, int start, int end, char seperator) {
+    int i;
+    char *p = NULL;
+    while(!argv[start]) start++;
+    if(start >= end) 
+        return NULL;
+    for(i = start; i < end; i++) {
+        p = argv[i];
+        if(!p) continue;
+        while(*p) p++;
+        if(i < end-1) {
+            while(p != argv[i+1]) {
+                *p++ = seperator;
+            }
+        } else
+            *p = seperator;
+    }
+    if(p) *p = '\0';
+    return argv[start];
+}