From 7c1c7693ca684c778d59a35accec6622f9879877 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Thu, 2 Jan 2020 14:10:52 +0100 Subject: [PATCH] skip non hexa char. for 7.4 --- src/Type/Linear/MsiCheck.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Type/Linear/MsiCheck.php b/src/Type/Linear/MsiCheck.php index f658f90..9725fa9 100644 --- a/src/Type/Linear/MsiCheck.php +++ b/src/Type/Linear/MsiCheck.php @@ -77,10 +77,13 @@ protected function getChecksum($code) $pix = 2; $check = 0; for ($pos = ($clen - 1); $pos >= 0; --$pos) { - $check += (hexdec($code[$pos]) * $pix); - ++$pix; - if ($pix > 7) { - $pix = 2; + $t = $code[$pos]; + if ($t >= "0" && $t <= "9" || $t >= "a" && $t <= "f" || $t >= "A" && $t <= "F") { + $check += (hexdec($t) * $pix); + ++$pix; + if ($pix > 7) { + $pix = 2; + } } } $check %= 11;