perl-threads-shared/threads-shared-1.62-Upgrade...

155 lines
4.2 KiB
Diff

From ff20adba57602ad3ae936eff6718f354d7352f1d Mon Sep 17 00:00:00 2001
From: Jitka Plesnikova <jplesnik@redhat.com>
Date: Thu, 12 May 2022 14:53:08 +0200
Subject: [PATCH] Upgrade to 1.64
---
lib/threads/shared.pm | 4 +--
shared.xs | 23 +++++++-------
t/pod.t | 70 -------------------------------------------
3 files changed, 13 insertions(+), 84 deletions(-)
delete mode 100644 t/pod.t
diff --git a/lib/threads/shared.pm b/lib/threads/shared.pm
index 3674d83..1fd2899 100644
--- a/lib/threads/shared.pm
+++ b/lib/threads/shared.pm
@@ -8,7 +8,7 @@ use Config;
use Scalar::Util qw(reftype refaddr blessed);
-our $VERSION = '1.62'; # Please update the pod, too.
+our $VERSION = '1.64'; # Please update the pod, too.
my $XS_VERSION = $VERSION;
$VERSION = eval $VERSION;
@@ -196,7 +196,7 @@ threads::shared - Perl extension for sharing data structures between threads
=head1 VERSION
-This document describes threads::shared version 1.62
+This document describes threads::shared version 1.64
=head1 SYNOPSIS
diff --git a/shared.xs b/shared.xs
index 4931a61..6a7f03c 100644
--- a/shared.xs
+++ b/shared.xs
@@ -824,10 +824,7 @@ sharedsv_scalar_store(pTHX_ SV *sv, SV *ssv)
* that any previous contents of ssv are correctly freed
* by sv_setsv(). Not sure if there is a better, API-legal way
* to achieve this */
- tmpref = newSV_type(SVt_RV);
- SvRV_set(tmpref, sobj);
- SvROK_on(tmpref);
- SvREFCNT_inc_simple_NN(sobj);
+ tmpref = newRV_inc(sobj);
sv_setsv_nomg(ssv, tmpref);
SvREFCNT_dec_NN(tmpref);
@@ -1296,14 +1293,16 @@ static void
Perl_sharedsv_init(pTHX)
{
dTHXc;
- PL_sharedsv_space = perl_alloc();
- perl_construct(PL_sharedsv_space);
- /* The pair above leaves us in shared context (what dTHX would get),
- * but aTHX still points to caller context */
- aTHX = PL_sharedsv_space;
- LEAVE; /* This balances the ENTER at the end of perl_construct. */
- PERL_SET_CONTEXT((aTHX = caller_perl));
- recursive_lock_init(aTHX_ &PL_sharedsv_lock);
+ if (!PL_sharedsv_space) {
+ PL_sharedsv_space = perl_alloc();
+ perl_construct(PL_sharedsv_space);
+ /* The pair above leaves us in shared context (what dTHX would get),
+ * but aTHX still points to caller context */
+ aTHX = PL_sharedsv_space;
+ LEAVE; /* This balances the ENTER at the end of perl_construct. */
+ PERL_SET_CONTEXT((aTHX = caller_perl));
+ recursive_lock_init(aTHX_ &PL_sharedsv_lock);
+ }
PL_lockhook = &Perl_sharedsv_locksv;
PL_sharehook = &Perl_sharedsv_share;
#ifdef PL_destroyhook
diff --git a/t/pod.t b/t/pod.t
deleted file mode 100644
index 5d0cb42..0000000
--- a/t/pod.t
+++ /dev/null
@@ -1,70 +0,0 @@
-use strict;
-use warnings;
-
-use Test::More;
-if ($ENV{RUN_MAINTAINER_TESTS}) {
- plan 'tests' => 3;
-} else {
- plan 'skip_all' => 'Module maintainer tests';
-}
-
-SKIP: {
- if (! eval 'use Test::Pod 1.26; 1') {
- skip('Test::Pod 1.26 required for testing POD', 1);
- }
-
- pod_file_ok('lib/threads/shared.pm');
-}
-
-SKIP: {
- if (! eval 'use Test::Pod::Coverage 1.08; 1') {
- skip('Test::Pod::Coverage 1.08 required for testing POD coverage', 1);
- }
-
- pod_coverage_ok('threads::shared',
- {
- 'trustme' => [
- ],
- 'private' => [
- qr/^import$/,
- ]
- }
- );
-}
-
-SKIP: {
- if (! eval 'use Test::Spelling; 1') {
- skip('Test::Spelling required for testing POD spelling', 1);
- }
- if (system('aspell help >/dev/null 2>&1')) {
- skip("'aspell' required for testing POD spelling", 1);
- }
- set_spell_cmd('aspell list --lang=en');
- add_stopwords(<DATA>);
- pod_file_spelling_ok('lib/threads/shared.pm', 'shared.pm spelling');
- unlink("/home/$ENV{'USER'}/en.prepl", "/home/$ENV{'USER'}/en.pws");
-}
-
-exit(0);
-
-__DATA__
-
-Artur
-Hedden
-
-cpan
-CPAN
-CONDVAR
-LOCKVAR
-refcnt
-variable's
-destructor
-destructors
-Destructors
-
-perlfunc
-dualvar
-SV
-
-MetaCPAN
-__END__
--
2.34.3