[libvirt] [PATCH 1/2] check scripts: handle unintialized driver vars in check-driverimpls.pl

Nikolay Shirokovskiy nshirokovskiy at virtuozzo.com
Thu Apr 19 06:56:07 UTC 2018



On 18.04.2018 20:25, Daniel P. Berrangé wrote:
> On Wed, Apr 18, 2018 at 05:31:12PM +0300, Nikolay Shirokovskiy wrote:
>> Current script does not recognize uninitialized driver vars and
>> interprets next lines as if there is initialization section.
> 
> IIUC, the problem is the line
> 
>    static virHypervisorDriver parallelsHypervisorDriver;
> 
> confuses it because it doesn't start a block ?

Yes.

> 
>> Let's assume we have sane initialization syntax for drivers
>> if it's present and check we if we have open braces.
>> ---
>>  src/check-driverimpls.pl | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/src/check-driverimpls.pl b/src/check-driverimpls.pl
>> index 4c28f20..63da2e1 100755
>> --- a/src/check-driverimpls.pl
>> +++ b/src/check-driverimpls.pl
>> @@ -67,7 +67,7 @@ while (<>) {
>>                  $status = 1;
>>              }
>>          }
>> -    } elsif (/^(?:static\s+)?(vir(?:\w+)?Driver)\s+/) {
>> +    } elsif (/^(?:static\s+)?(vir(?:\w+)?Driver)\s+(?:\w+)\s*=\s*{\s*$/) {
> 
> I'd rather we did a blacklist of the ";" character, so we
> still detect it if there's other unusal formatting used
> eg use a negative assertion lookahead like
> 
>     } elsif (/^(?:static\s+)?(vir(?:\w+)?Driver)\s+(?!.*;)/) {
> 

Agree. With your patch in case of misformatting ; we can break and fix
formatting. With my patch in case of misformatting { we can skip the check
which is worse.

I'll push series with your patch if you don't mind.

Nikolay




More information about the libvir-list mailing list