Seite 1 von 1

Bevorzugter Wechselgeldrechnermodus Bug

Verfasst: Fr 23. Sep 2022, 11:38
von paddif
Hallo Pichel,

ich hatte in einer neu installieren Version (2.4.4) den Umstand, dass die Funktion
"Bevorzugter Wechselgeldrechnermodus:" auf Methode "Kein Wechselgeldrechner" nicht Funktioniert hatte, sondern immer den Default Wert 1 zurückgegeben hat.

Webserver Daten:
OS: Windows
Apache 2.4
PHP 8.1.6
MariaDB 10.4.24

Ich habe mir daraufhin die admin.php angeschaut
Und folgenden fehler entdeckt.

der Wert in der Methode getUserValue wird überprüft ob vorhanden:

Code: Alles auswählen

if ($aVal == null) {
    $aVal = $defaultvalue;
}
Laut offizieller Doku von php ist das ergebnis bei Loose comparisons ( == ) --> ( 0 == null ) = true
siehe: https://www.php.net/manual/en/types.comparisons.php

theoretisch müsste hier die Strict comparison angewendet werden ( === ) oder die methode is_null($aVal)

Code: Alles auswählen

if ($aVal === null) {
    $aVal = $defaultvalue;
}

Code: Alles auswählen

if (is_null($aVal)) {
    $aVal = $defaultvalue;
}
Gruß
Patrick

Re: Bevorzugter Wechselgeldrechnermodus Bug

Verfasst: Di 27. Sep 2022, 15:49
von pichel
Hallo Patrick,

vielen Dank für den Hinweis. Das passiert, wenn man in verschiedenen Projekten mit unterschiedlichen Programmiersprachen unterwegs ist. Habe ich korrigiert und wird in der 2.4.5 drin sein.

Gruß,

Stefan