Not successful if statements returning error code

Ahmad Fatoum a.fatoum at pengutronix.de
Thu Jul 29 02:22:49 PDT 2021


On 28.07.21 11:38, Denis Osterland-Heim wrote:
> Hi,
> 
> Am Mittwoch, den 28.07.2021, 10:56 +0200 schrieb Ahmad Fatoum:
>
>> I talked with Sascha once before (off-list) about a similar issue. Missing error handling
>> results in
>>
>>   [ x1 -eq x2 ] && echo yes || echo no
>>
>> printing yes.
>>
>> We agreed that it's ok to break scripts relying on clear hush bugs like this.
>>
>> I'd thus recommend you to send a patch to fix hush instead of working around it.
> shellcheck says:
> 
> SC2015: Note that A && B || C is not if-then-else. C may run when A is true.
> 
> So I would think that B is maybe allowed to run before A, too.
> But, I do not know if Hush specifies execution order here.

An option-less barebox echo can't fail, so it should never
print both yes and no, but thanks for the reference. I'll keep
an eye on it in future shell code.

This wasn't what I meant to show though, I meant that x1 and x2
are both non-integers and -eq which compares integers returns
true when comparing them unlike what a POSIX shell does.

Cheers,
Ahmad
 

> 
> Regards, Denis
> 
>>
>> Cheers,
>> Ahmad
>>
>>>
>>> Thank you for your answer.
>>>
>>> Best regards,
>>> Andrej
>>>
>>> _______________________________________________
>>> barebox mailing list
>>> barebox at lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/barebox
>>>
>>
>>
> Diehl Connectivity Solutions GmbH
> Geschäftsführung: Horst Leonberger
> Sitz der Gesellschaft: Nürnberg - Registergericht: Amtsgericht
> Nürnberg: HRB 32315
> 
> ________________________________
> 
> Der Inhalt der vorstehenden E-Mail ist nicht rechtlich bindend. Diese E-Mail enthaelt vertrauliche und/oder rechtlich geschuetzte Informationen.
> Informieren Sie uns bitte, wenn Sie diese E-Mail faelschlicherweise erhalten haben. Bitte loeschen Sie in diesem Fall die Nachricht.
> Jede unerlaubte Form der Reproduktion, Bekanntgabe, Aenderung, Verteilung und/oder Publikation dieser E-Mail ist strengstens untersagt.
> 
> - Informationen zum Datenschutz, insbesondere zu Ihren Rechten, erhalten Sie unter:
> 
> https://www.diehl.com/group/de/transparenz-und-informationspflichten/
> 
> The contents of the above mentioned e-mail is not legally binding. This e-mail contains confidential and/or legally protected information. Please inform us if you have received this e-mail by
> mistake and delete it in such a case. Each unauthorized reproduction, disclosure, alteration, distribution and/or publication of this e-mail is strictly prohibited.
> 
> - For general information on data protection and your respective rights please visit:
> 
> https://www.diehl.com/group/en/transparency-and-information-obligations/
> 
> 
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
> 


-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list