[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#783404: marked as done (jessie-pu: package perl/5.20.2-3+deb8u1)



Your message dated Sat, 06 Jun 2015 13:11:11 +0100
with message-id <1433592671.2987.12.camel@adam-barratt.org.uk>
and subject line Fix released with 8.1 point release
has caused the Debian Bug report #783404,
regarding jessie-pu: package perl/5.20.2-3+deb8u1
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 owner@bugs.debian.org
immediately.)


-- 
783404: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783404
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: jessie
User: release.debian.org@packages.debian.org
Usertags: pu

Hi, and many thanks for your work on the jessie release!

I'd like to fix #779357 in a point update. Debdiff attached

Please let me know if I can upload.

-- System Information:
Debian Release: 8.0
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
diff -Nru perl-5.20.2/debian/changelog perl-5.20.2/debian/changelog
--- perl-5.20.2/debian/changelog	2015-03-29 17:20:50.000000000 +0300
+++ perl-5.20.2/debian/changelog	2015-04-26 20:21:50.000000000 +0300
@@ -1,3 +1,10 @@
+perl (5.20.2-3+deb8u1) UNRELEASED; urgency=medium
+
+  * Make the perl debugger work with threaded programs again.
+    Thanks to James McCoy. (Closes: #779357)
+
+ -- Niko Tyni <ntyni@debian.org>  Sun, 26 Apr 2015 20:20:06 +0300
+
 perl (5.20.2-3) unstable; urgency=medium
 
   * Improve the error message when a path is inaccessible during
diff -Nru perl-5.20.2/debian/patches/fixes/array-cloning.diff perl-5.20.2/debian/patches/fixes/array-cloning.diff
--- perl-5.20.2/debian/patches/fixes/array-cloning.diff	1970-01-01 02:00:00.000000000 +0200
+++ perl-5.20.2/debian/patches/fixes/array-cloning.diff	2015-04-26 20:21:42.000000000 +0300
@@ -0,0 +1,57 @@
+From 531ec0bc39500f3036f2e81bb4e30e6ff45caf8b Mon Sep 17 00:00:00 2001
+From: Tony Cook <tony@develop-help.com>
+Date: Tue, 14 Apr 2015 15:59:03 +1000
+Subject: fix cloning arrays with unused elements
+
+ce0d59fd changed arrays to use NULL instead of &PL_sv_undef for
+unused elements, unfortunately it missed updating sv_dup_common()'s
+initialization of unused elements, leaving them as &PL_sv_undef.
+
+This resulted in modification of read only value errors at runtime.
+
+Origin: upstream, http://perl5.git.perl.org/perl.git/commit/902d16915db2735c3a41f15ef8d95cf300c31801
+Bug: https://rt.perl.org/Public/Bug/Display.html?id=124127
+Bug-Debian: https://bugs.debian.org/779357
+Patch-Name: fixes/array-cloning.diff
+---
+ sv.c           | 2 +-
+ t/op/threads.t | 8 +++++++-
+ 2 files changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/sv.c b/sv.c
+index af393bd..06db7d9 100644
+--- a/sv.c
++++ b/sv.c
+@@ -12698,7 +12698,7 @@ S_sv_dup_common(pTHX_ const SV *const sstr, CLONE_PARAMS *const param)
+ 		    }
+ 		    items = AvMAX((const AV *)sstr) - AvFILLp((const AV *)sstr);
+ 		    while (items-- > 0) {
+-			*dst_ary++ = &PL_sv_undef;
++			*dst_ary++ = NULL;
+ 		    }
+ 		}
+ 		else {
+diff --git a/t/op/threads.t b/t/op/threads.t
+index 67b5f4a..bec210b 100644
+--- a/t/op/threads.t
++++ b/t/op/threads.t
+@@ -9,7 +9,7 @@ BEGIN {
+      skip_all_without_config('useithreads');
+      skip_all_if_miniperl("no dynamic loading on miniperl, no threads");
+ 
+-     plan(27);
++     plan(28);
+ }
+ 
+ use strict;
+@@ -403,4 +403,10 @@ fresh_perl_is(
+   'no crash when deleting $::{INC} in thread'
+ );
+ 
++fresh_perl_is(<<'CODE', 'ok', 'no crash modifying extended array element');
++use threads;
++my @a = 1;
++threads->create(sub { $#a = 1; $a[1] = 2; print qq/ok\n/ })->join;
++CODE
++
+ # EOF
diff -Nru perl-5.20.2/debian/patches/fixes/perldb-threads.diff perl-5.20.2/debian/patches/fixes/perldb-threads.diff
--- perl-5.20.2/debian/patches/fixes/perldb-threads.diff	1970-01-01 02:00:00.000000000 +0200
+++ perl-5.20.2/debian/patches/fixes/perldb-threads.diff	2015-04-26 20:21:42.000000000 +0300
@@ -0,0 +1,41 @@
+From be07711644372b791211e184a2cc43ebc17873f1 Mon Sep 17 00:00:00 2001
+From: James McCoy <vega.james@gmail.com>
+Date: Thu, 19 Mar 2015 22:55:18 -0400
+Subject: lib/perl5db.pl: Restore noop lock prototype
+
+cde405a6b9b86bd8110f63531b42d89590a4c56e removed the lock prototype
+"because it's already a do-nothing weak keyword without threads".
+However, that causes "perl -d threaded-script.pl" to complain
+
+    lock can only be used on shared values at /usr/share/perl/5.20/perl5db.pl line 4101.
+    BEGIN failed--compilation aborted at threaded-script.pl line 2.
+    lock can only be used on shared values at /usr/share/perl/5.20/perl5db.pl line 2514.
+    END failed--call queue aborted at threaded-script.pl line 2.
+    Unbalanced scopes: 3 more ENTERs than LEAVEs
+
+because threaded-script.pl's importing of threads::shared enable's
+lock()'s non-noop behavior.  Restoring the lock() prototype fixes the
+inconsistency between lock() and share() usage.
+
+Signed-off-by: James McCoy <vega.james@gmail.com>
+
+Origin: upstream, http://perl5.git.perl.org/perl.git/commit/41ef2c66e0da6dfb04ded81b979f7081007a1add
+Bug: https://rt.perl.org/Public/Bug/Display.html?id=124127
+Bug-Debian: https://bugs.debian.org/779357
+Patch-Name: fixes/perldb-threads.diff
+---
+ lib/perl5db.pl | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/lib/perl5db.pl b/lib/perl5db.pl
+index 6ac4d36..f962fb8 100644
+--- a/lib/perl5db.pl
++++ b/lib/perl5db.pl
+@@ -866,6 +866,7 @@ BEGIN {
+         lock($DBGR);
+         print "Threads support enabled\n";
+     } else {
++        *lock = sub(*) {};
+         *share = sub(\[$@%]) {};
+     }
+ }
diff -Nru perl-5.20.2/debian/patches/series perl-5.20.2/debian/patches/series
--- perl-5.20.2/debian/patches/series	2015-03-29 15:48:50.000000000 +0300
+++ perl-5.20.2/debian/patches/series	2015-04-26 20:21:42.000000000 +0300
@@ -38,3 +38,5 @@
 fixes/hurd_socket_recv_todo.diff
 fixes/regexp-performance.diff
 fixes/failed_require_diagnostics.diff
+fixes/array-cloning.diff
+fixes/perldb-threads.diff

--- End Message ---
--- Begin Message ---
Version: 8.1

Hi,

The fix discussed in this bug was released to stable as part of the 8.1
point release earlier today.

Regards,

Adam

--- End Message ---

Reply to: