Am 01.03.2013 18:31, schrieb Lennart Poettering: > On Fri, 01.03.13 18:21, Harald Hoyer (harald.ho...@gmail.com) wrote: > >> >> Am 01.03.2013 18:00, schrieb Lennart Poettering: >>> On Fri, 01.03.13 17:56, Harald Hoyer (har...@redhat.com) wrote: >>> >>>> >>>> Am 01.03.2013 17:37, schrieb Lennart Poettering: >>>>> On Fri, 01.03.13 15:13, har...@redhat.com (har...@redhat.com) wrote: >>>>> >>>>>> From: Harald Hoyer <har...@redhat.com> >>>>>> >>>>>> If no "ro" or "rw" is specified on the kernel command line, mount root >>>>>> read-only on /sysroot by default >>>>> >>>>> This sounds good, in order to stay in sync with the initrd-less kernel >>>>> logic. Please commit! >>>>> >>q>> >>>> committed. >>>> >>>> Btw, strjoin() should really handle empty strings as the first argument. >>>> >>>> strjoin(NULL, ",", "TEST") should result in "TEST" .. shouldn't it? >>>> >>>> strjoin("", ",", "TEST") ? >>> >>> We use NULL as the sentinel here for the varargs list. It just stupidly >>> concatenates the strings you pass it, one after the other, until we hit >>> NULL. If you pass NULL as first arg, then we'd just stop there... >>> >>> There's strempty() which turns NULL into ""? >>> >>> Lennart >>> >> >> Still: >> strjoin("", ",", "TEST") returns ",TEST" then.. > > No, that call will crash, since you forgot the NULL sentinel. Examples: > > strjoin("", ",", "TEST", NULL) → ",TEST" > strjoin("a", "b", "c", NULL) → "abc" > strjoin("a", "b", "c", "d", NULL) → "abcd" > strjoin("a", "b", "c", "d", "e", NULL) → "abcde" > strjoin(NULL) → "" > strjoin("", "", "", NULL) → "" > strjoin("abc", "xyz", NULL) → "abcxyz" > strjoin("abc", NULL, "xyz") → "abc" > > That's just trivially simple concatenation, ending at the first > NULL. Not sure what you expect instead? > > Lennart >
Oops :) had the wrong thing in my mind :) join an array of strings with a separator _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel