Bug 40490: Remove warnings from GD::Barcode::QRcode - U24

01:18:38 koha_1       | #   Failed test 'no warnings'
01:18:38 koha_1       | #   at /usr/share/perl/5.38/Test/Builder.pm line 193.
01:18:38 koha_1       | # There were 6 warning(s)
01:18:38 koha_1       | #     Previous test 4 '401 Unauthorized'
01:18:38 koha_1       | #     Use of uninitialized value $aMask[1079] in bitwise xor (^) at /usr/share/perl5/GD/Barcode/QRcode.pm line 217.
01:18:38 koha_1       | #  at /usr/share/perl5/GD/Barcode/QRcode.pm line 217.

jammy (22.04LTS) (perl): 1.15-7
noble (24.04LTS) (perl): 2.00-1

I guess it's fixed by
85e7911e65

But it is not released yet: version 2 is from September 2023 and commit from March 2024.

Test plan:
Install version 2 of GD::Barcode:
  `cpanm GD::Barcode@2.0.0`
Run the tests
Without this patch the "no warnings" test fails
With this patch applied the tests pass

Signed-off-by: David Cook <dcook@prosentient.com.au>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit fd6ceb6b24)
Signed-off-by: Paul Derscheid <paul.derscheid@lmscloud.de>
This commit is contained in:
Jonathan Druart 2025-07-24 07:37:52 +02:00 committed by Paul Derscheid
parent 0258e55bd2
commit ddf1b9dfe3
No known key found for this signature in database
GPG Key ID: C25F9FD44CED595B
1 changed files with 26 additions and 2 deletions

View File

@ -90,7 +90,19 @@ subtest 'registration and verification' => sub {
$tx = $t->ua->build_tx( POST => "/api/v1/auth/two-factor/registration" );
$tx->req->cookies( { name => 'CGISESSID', value => $session->id } );
$tx->req->env( { REMOTE_ADDR => $remote_address } );
$t->request_ok($tx)->status_is(201);
{
# Ignore the following warning
# Use of uninitialized value $aMask[1383] in bitwise xor (^) at /usr/local/share/perl/5.36.0/GD/Barcode/QRcode.pm line 217.
# We do not want to expect it (using Test::Warn): it is a bug from GD::Barcode
local $SIG{__WARN__} = sub { };
my $dup_err;
local *STDERR;
open STDERR, ">>", \$dup_err;
$t->request_ok($tx)->status_is(201);
close STDERR;
}
my $secret32 = $t->tx->res->json->{secret32};
$tx = $t->ua->build_tx( POST => "/api/v1/auth/two-factor/registration/verification" );
@ -120,7 +132,19 @@ subtest 'registration and verification' => sub {
$tx = $t->ua->build_tx( POST => "/api/v1/auth/two-factor/registration" );
$tx->req->cookies( { name => 'CGISESSID', value => $session->id } );
$tx->req->env( { REMOTE_ADDR => $remote_address } );
$t->request_ok($tx)->status_is(201);
{
# Ignore the following warning
# Use of uninitialized value $aMask[1383] in bitwise xor (^) at /usr/local/share/perl/5.36.0/GD/Barcode/QRcode.pm line 217.
# We do not want to expect it (using Test::Warn): it is a bug from GD::Barcode
local $SIG{__WARN__} = sub { };
my $dup_err;
local *STDERR;
open STDERR, ">>", \$dup_err;
$t->request_ok($tx)->status_is(201);
close STDERR;
}
$secret32 = $t->tx->res->json->{secret32};
$auth = Koha::Auth::TwoFactorAuth->new( { patron => $patron, secret32 => $secret32 } );