small fix checknodefalgs
This commit is contained in:
parent
8db2ee4260
commit
de6ef3936b
@ -57,22 +57,23 @@ int nodelist_checkflag(const char *nodeflags, const char *flag)
|
|||||||
char *q;
|
char *q;
|
||||||
|
|
||||||
DEB((D_NODELIST, "nodelist: checking flag \"%s\" in flags \"%s\"", flag, nodeflags));
|
DEB((D_NODELIST, "nodelist: checking flag \"%s\" in flags \"%s\"", flag, nodeflags));
|
||||||
|
if ( nodeflags ) {
|
||||||
while( p = strcasestr(searchbase, flag) ) // p - found flag
|
while( p = strcasestr(searchbase, flag) ) // p - found flag
|
||||||
{
|
|
||||||
if( (p == searchbase) || (p != searchbase && *(p-1) == ',') )
|
|
||||||
{
|
{
|
||||||
if( (q = strchr(p, ',')) == NULL || (q - p) == strlen(flag) ) {
|
if( (p == searchbase) || (p != searchbase && *(p-1) == ',') )
|
||||||
DEB((D_NODELIST, "nodelist: found flag %s", flag));
|
{
|
||||||
return 0;
|
if( (q = strchr(p, ',')) == NULL || (q - p) == strlen(flag) ) {
|
||||||
|
DEB((D_NODELIST, "nodelist: found flag %s", flag));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if( (strchrnul(p, ':') - p) == strlen(flag) ) {
|
||||||
|
DEB((D_NODELIST, "nodelist: found flag %s", flag));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if( (strchrnul(p, ':') - p) == strlen(flag) ) {
|
|
||||||
DEB((D_NODELIST, "nodelist: found flag %s", flag));
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
searchbase = p + 1; // avoid finding again the same
|
searchbase = p + 1; // avoid finding again the same
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user