Your message dated Sun, 14 Jan 2024 09:21:27 +0000
with message-id <e1rowgj-00h7o1...@fasolo.debian.org>
and subject line Bug#1060458: fixed in perl-tk 1:804.036+dfsg1-2
has caused the Debian Bug report #1060458,
regarding perl-tk: FTBFS with Perl 5.38 on big-endian 64-bit: test failures
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1060458: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1060458
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: perl-tk
Version: 1:804.036+dfsg1-1
Severity: serious
Tags: ftbfs patch
User: debian-p...@lists.debian.org
Usertags: perl-5.38-transition

This package failed to build against Perl 5.38 on s390x, ppc64, sparc64,
and alpha.

This is because Perl upstream changed the implementation of SvPV() et
al., triggering a latent bug in perl-tk that bites on big endian 64-bit
architectures. The attached patch fixes this, see the commit message
for more detail. I've tested that it works on both s390x and amd64,
on Perl 5.36 (trixie) and 5.38 (sid).

Not sure why alpha is failing too, but it has a slightly different
failure mode. I suspect alignment issues.

This is currently a hard blocker for the ongoing Perl 5.38 transition as
perl-tk has quite a few reverse dependencies that are now uninstallable
on s390x.


   #   Failed test 'Creating Balloon widget'
   #   at t/balloon.t line 31.
   #          got: 'couldn't recognize image data at 
/<<PKGBUILDDIR>>/blib/lib/Tk/Image.pm line 21.
   #  at /<<PKGBUILDDIR>>/blib/lib/Tk/Balloon.pm line 62.
   # '
   #     expected: ''
   
   [...]
   
   Test Summary Report
   -------------------
   t/balloon.t                (Wstat: 512 (exited 2) Tests: 12 Failed: 11)
     Failed tests:  2-12
     Non-zero exit status: 2
     Parse errors: Bad plan.  You planned 14 tests but ran 12.
   t/canvas.t                 (Wstat: 0 Tests: 166 Failed: 0)
     TODO passed:   124
   t/canvas2.t                (Wstat: 65280 (exited 255) Tests: 0 Failed: 0)
     Non-zero exit status: 255
     Parse errors: Bad plan.  You planned 87 tests but ran 0.
   t/listbox.t                (Wstat: 0 Tests: 537 Failed: 0)
     TODO passed:   320-322, 328, 502
   t/photo.t                  (Wstat: 65280 (exited 255) Tests: 100 Failed: 0)
     Non-zero exit status: 255
     Parse errors: Bad plan.  You planned 111 tests but ran 100.
   t/text.t                   (Wstat: 0 Tests: 415 Failed: 0)
     TODO passed:   121
   t/wm-tcl.t                 (Wstat: 0 Tests: 315 Failed: 0)
     TODO passed:   86-87, 154-157, 164-165, 175-178, 221-224
                   237-239, 264-265, 275-276, 280-283
   t/zzScrolled.t             (Wstat: 0 Tests: 94 Failed: 0)
     TODO passed:   52, 66, 80, 94
   Files=76, Tests=4267, 36 wallclock secs ( 0.23 usr  0.05 sys +  6.02 cusr  
0.69 csys =  6.99 CPU)
   Result: FAIL

-- 
Niko Tyni   nt...@debian.org
>From a26233c844c52f49ef9cca5f88dd9063aac60d0f Mon Sep 17 00:00:00 2001
From: Niko Tyni <nt...@debian.org>
Date: Thu, 11 Jan 2024 18:28:58 +0000
Subject: [PATCH] Fix STRLEN vs int pointer confusion in
 Tcl_GetByteArrayFromObj()

Perl 5.37.2, more precisely commit

 https://github.com/Perl/perl5/commit/1ef9039bccbfe64f47f201b6cfb7d6d23e0b08a7

changed the implementation of SvPV() et al., breaking t/balloon.t,
t/canvas2.t and t/photo.t on big-endian 64-bit architectures such as
ppc64 and s390x because StringMatchGIF() no longer recognized GIF files.

This is because Tcl_GetByteArrayFromObj() was calling SvPV() with an int
pointer instead of a correct STRLEN pointer, and the new implementation
is more sensitive to this: it assigns the pointers as-is, resulting in
the int pointer pointing at the wrong end of the 64-bit length.

Other functions taking a length pointer, at least Tcl_GetStringFromObj()
already seem to do things correctly, so presumably this is not a
systematic issue.
---
 objGlue.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/objGlue.c b/objGlue.c
index d4927ea..dbd6a50 100644
--- a/objGlue.c
+++ b/objGlue.c
@@ -627,7 +627,10 @@ Tcl_GetByteArrayFromObj(Tcl_Obj * objPtr, int * lengthPtr)
  sv_utf8_downgrade(objPtr, 0);
  if (lengthPtr)
   {
-   return (unsigned char *) SvPV(objPtr, *lengthPtr);
+   STRLEN len;
+   unsigned char *s = SvPV(objPtr, len);
+   *lengthPtr = len;
+   return s;
   }
  else
   {
-- 
2.30.2


--- End Message ---
--- Begin Message ---
Source: perl-tk
Source-Version: 1:804.036+dfsg1-2
Done: Georges Khaznadar <georg...@debian.org>

We believe that the bug you reported is fixed in the latest version of
perl-tk, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1060...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Georges Khaznadar <georg...@debian.org> (supplier of updated perl-tk package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sun, 14 Jan 2024 09:43:59 +0100
Source: perl-tk
Architecture: source
Version: 1:804.036+dfsg1-2
Distribution: unstable
Urgency: medium
Maintainer: Georges Khaznadar <georg...@debian.org>
Changed-By: Georges Khaznadar <georg...@debian.org>
Closes: 1060458
Changes:
 perl-tk (1:804.036+dfsg1-2) unstable; urgency=medium
 .
   * adopted gregor herrmann's patch, just changed the filename's
     leading number. (Closes: #1060458)
   * added debian/salsa-ci.yml
   * bumped Standards-Version: 4.6.2
Checksums-Sha1:
 c6e881de00060ba043bf351bf16002433a1307de 2050 perl-tk_804.036+dfsg1-2.dsc
 4a0645674c96a7a981f70f5aeba86f37451188fc 16808 
perl-tk_804.036+dfsg1-2.debian.tar.xz
 123827d20b3fb5573372e20d685d7ca73a2b5aef 9053 
perl-tk_804.036+dfsg1-2_source.buildinfo
Checksums-Sha256:
 7de9bc0eb3e312f0872321251b3660f363b3f0dbd7c52f227044ba59fa810970 2050 
perl-tk_804.036+dfsg1-2.dsc
 e10878c1b20f7876370393beaa73f37246c19b8658914c203aaf62e1aeb74d56 16808 
perl-tk_804.036+dfsg1-2.debian.tar.xz
 accc47d9b48d999eda8b26022bb295037c54da214b0c357ab756b104603c772e 9053 
perl-tk_804.036+dfsg1-2_source.buildinfo
Files:
 84374ce9048c8cd7ba0174529631a7d4 2050 perl optional perl-tk_804.036+dfsg1-2.dsc
 26eb3908ec69044a1612a99e3cfeb92c 16808 perl optional 
perl-tk_804.036+dfsg1-2.debian.tar.xz
 f5d03eb2ad25c9831097350fc4b671aa 9053 perl optional 
perl-tk_804.036+dfsg1-2_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQJIBAEBCAAyFiEEM0CzZP9nFT+3zK6FHCgWkHE2rjkFAmWjojwUHGdlb3JnZXNr
QGRlYmlhbi5vcmcACgkQHCgWkHE2rjl+qxAAhdCikW2SsL4zNPuBzi9GCTrgSYJT
RWPMa5UnXcmhJOrv7Ux1LhKAfzkNUIBXo3seFAG7A/z4AxMYxiOUTWWfS1fW9BTp
m+KW7wvHmvKlQe9qjifbfY56vTWdiIMwm3tA6mhDc/p7E5qkMC8owzFRtDzk7yei
6Ds7C6TQh+BjWOFhSAhULNfLzcK2bxWfOUxYoROpFn/u6WH9eP98ho2l8IAfjise
J41YqxfVn0HVE3/FCYqGB3JARNL+afDHsYu51CVyYA/YAMLGg8M+WaUe0bD83/m5
mlIdioXtE71d0FT02gRFcXkkewSqn8dNrLM6mE4msZbQAyU5SXQI6uV2IKPzHwTG
d2z2y79J9WmuOFy1aI17+raBFQ+QbcezUNtEQSXZge/at2zlftPT0x6CPsKci0nF
GOdzEIaC9dCUF6tcWMUkkkNOjHpq8uyAXBBCVnSKckEdT4uiddztk7/L7AkSy3C1
NSf5csh1n387OnZU8S1rfUYLPfTfl5a1Ncw8i2fmd8UDfMhPTxS6yLavsO26IHCM
8iapSbKQm3sp/7nxxK64lmtbVkTo6ZrwAjdYFQ9axg9MBeIVALoRoB2lQa0xi1us
w/P3pOG6rs5aE7jfHy04yQM0JyQlFeGQJurWFHM+p2pIPiyDSN3tIPh3mphfy29t
IMZgq1jIsJSUWtI=
=ZRmH
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to