chiark / gitweb /
bus: reuse more code
[elogind.git] / src / shared / util.c
index f94abbcc02502f442efd6699d934231a3fca1cf9..872f6f737192c827212f45a1aed2fa3c1c12b167 100644 (file)
@@ -5553,7 +5553,6 @@ int on_ac_power(void) {
         for (;;) {
                 struct dirent *de;
                 union dirent_storage buf;
-                _cleanup_free_ char *p = NULL;
                 _cleanup_close_ int fd = -1, device = -1;
                 char contents[6];
                 ssize_t n;
@@ -5797,3 +5796,22 @@ char *strextend(char **x, ...) {
 
         return r + l;
 }
+
+char *strrep(const char *s, unsigned n) {
+        size_t l;
+        char *r, *p;
+        unsigned i;
+
+        assert(s);
+
+        l = strlen(s);
+        p = r = malloc(l * n + 1);
+        if (!r)
+                return NULL;
+
+        for (i = 0; i < n; i++)
+                p = stpcpy(p, s);
+
+        *p = 0;
+        return r;
+}