On 08/29/2017 12:05 AM, Martin Wilck wrote: > The case f == NULL is already handled by the code from > b1ecdd46b6ec "segment faulty occured in add_feature()" above. > > Signed-off-by: Martin Wilck <mwilck@xxxxxxxx> > --- > libmultipath/structs.c | 27 ++++++++++++--------------- > 1 file changed, 12 insertions(+), 15 deletions(-) > > diff --git a/libmultipath/structs.c b/libmultipath/structs.c > index 28704676..11e33676 100644 > --- a/libmultipath/structs.c > +++ b/libmultipath/structs.c > @@ -515,7 +515,7 @@ void setup_feature(struct multipath *mpp, char *feature) > > int add_feature(char **f, const char *n) > { > - int c = 0, d, l = 0; > + int c = 0, d, l; > char *e, *p, *t; > const char *q; > > @@ -538,19 +538,18 @@ int add_feature(char **f, const char *n) > } > > /* Check if feature is already present */ > - if (*f) { > - if (strstr(*f, n)) > - return 0; > + if (strstr(*f, n)) > + return 0; > > - /* Get feature count */ > - c = strtoul(*f, &e, 10); > - if (*f == e) > - /* parse error */ > - return 1; > + /* Get feature count */ > + c = strtoul(*f, &e, 10); > + if (*f == e) > + /* parse error */ > + return 1; > + > + /* Check if we need to increase feature count space */ > + l = strlen(*f) + strlen(n) + 1; > > - /* Check if we need to increase feature count space */ > - l = strlen(*f) + strlen(n) + 1; > - } > /* Count new features */ > if ((c % 10) == 9) > l++; > @@ -582,9 +581,7 @@ int add_feature(char **f, const char *n) > snprintf(p, l + 2, "%0d ", c); > > /* Copy the feature string */ > - p = NULL; > - if (*f) > - p = strchr(*f, ' '); > + p = strchr(*f, ' '); > > if (p) { > while (*p == ' ') > At one point we should have a test case for adding/removing features... Reviewed-by: Hannes Reinecke <hare@xxxxxxxx> Cheers, Hannes -- Dr. Hannes Reinecke Teamlead Storage & Networking hare@xxxxxxx +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg) -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel