On 10/14/2011 06:10 PM, Regid Ichira wrote:
> The if() statement always evaluated to true.
>> Detected by "cppcheck", not tested on real hardware.
>>
>> -      if(  ( BattVoltage > 129 ) || ( BattVoltage < 144 ) )
>> +      if(  ( BattVoltage > 129 ) && ( BattVoltage < 144 ) )
>   I think the current, ||, logic is fine.  I can't see in what 
> circumstances it would yield the wrong decision.  Can anyone point a
> scenario where I am wrong?

As the diagnostic says, it is always true.  No matter what value
BattVoltage takes, whether float or int,
it is always either > 129 or < 144.   It is clearly a bug, but we aren't
sure whether it should be
in range, out of range, or just remove the test altogether (since it
seems to work when always true).


_______________________________________________
Nut-upsdev mailing list
Nut-upsdev@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/nut-upsdev

Reply via email to