[CRIU] [PATCH 3/7] mount: use add_to_string() in attach_option()
Stanislav Kinsburskiy
skinsbursky at odin.com
Wed Dec 16 12:51:56 PST 2015
16.12.2015 18:45, Pavel Emelyanov пишет:
> On 12/16/2015 06:33 PM, Stanislav Kinsburskiy wrote:
>> Signed-off-by: Stanislav Kinsburskiy <skinsbursky at virtuozzo.com>
>> ---
>> mount.c | 23 +++++------------------
>> 1 file changed, 5 insertions(+), 18 deletions(-)
>>
>> diff --git a/mount.c b/mount.c
>> index 0c3192a..bcb8a77 100644
>> --- a/mount.c
>> +++ b/mount.c
>> @@ -1163,24 +1163,11 @@ out:
>>
>> static int attach_option(struct mount_info *pm, char *opt)
>> {
>> - char *buf;
>> - int len, olen;
>> -
>> - len = strlen(pm->options);
>> - olen = strlen(opt);
>> - buf = xrealloc(pm->options, len + olen + 2);
>> - if (buf == NULL)
>> - return -1;
>> -
>> - if (len && buf[len - 1] != ',') {
>> - buf[len] = ',';
>> - len++;
>> - }
>> -
>> - memcpy(buf + len, opt, olen + 1);
>> - pm->options = buf;
>> -
>> - return 0;
>> + if (pm->options[strlen(pm->options)-1] == ',')
> Isn't it faster to check for pm->options[0] != '\0'?
>
This check for "," at the end was strange. I don't really understand,
where it comes from.
I though, that the intention is to not duplicate comma when adding
another option.
No?
>> + pm->options = add_to_string(pm->options, "%s", opt);
>> + else
>> + pm->options = add_to_string(pm->options, ",%s", opt);
>> + return pm->options ? 0 : -1;
>> }
>>
>> /* Is it mounted w or w/o the newinstance option */
>>
>> _______________________________________________
>> CRIU mailing list
>> CRIU at openvz.org
>> https://lists.openvz.org/mailman/listinfo/criu
>> .
>>
More information about the CRIU
mailing list