[libcoro-perl] 04/05: Drop coro-5.22.patch, issues are fixed upstream.
gregor herrmann
gregoa at debian.org
Wed Jul 20 17:25:38 UTC 2016
This is an automated email from the git hooks/post-receive script.
gregoa pushed a commit to branch master
in repository libcoro-perl.
commit 5cbdb7f5c667590a147a416596b8075adae8c4df
Author: gregor herrmann <gregoa at debian.org>
Date: Wed Jul 20 19:20:33 2016 +0200
Drop coro-5.22.patch, issues are fixed upstream.
---
debian/patches/coro-5.22.patch | 153 -----------------------------------------
debian/patches/series | 1 -
2 files changed, 154 deletions(-)
diff --git a/debian/patches/coro-5.22.patch b/debian/patches/coro-5.22.patch
deleted file mode 100644
index f0234c1..0000000
--- a/debian/patches/coro-5.22.patch
+++ /dev/null
@@ -1,153 +0,0 @@
-Description: fix for Coro with 5.22 and 5.24
-Bug: https://rt.cpan.org/Public/Bug/Display.html?id=101063
-Bug-Debian: https://bugs.debian.org/787500
-Author: Anonymous
-Origin: https://paste.debian.net/688072
-Last-Update: 2016-05-20
-
---- a/Coro/State.xs
-+++ b/Coro/State.xs
-@@ -39,6 +39,10 @@
- #ifdef PadARRAY
- # define NEWPADAPI 1
- # define newPADLIST(var) (Newz (0, var, 1, PADLIST), Newx (PadlistARRAY (var), 2, PAD *))
-+# if PERL_VERSION_ATLEAST(5,22,0) && !PERL_VERSION_ATLEAST(5,24,0)
-+# undef PadlistNAMES
-+# define PadlistNAMES(pl) *((PADNAMELIST **)PadlistARRAY(pl))
-+# endif
- #else
- typedef AV PADNAMELIST;
- # if !PERL_VERSION_ATLEAST(5,8,0)
-@@ -951,7 +955,13 @@ coro_init_stacks (pTHX)
-
- New(54,PL_savestack,24,ANY);
- PL_savestack_ix = 0;
-+#ifdef SS_MAXPUSH
-+ /* Of course, if you clone the code, you have to track the changes... */
-+ /*PL_savestack_max lies: it always has SS_MAXPUSH more than it claims */
-+ PL_savestack_max = 24 - SS_MAXPUSH;
-+#else
- PL_savestack_max = 24;
-+#endif
-
- #if !PERL_VERSION_ATLEAST (5,10,0)
- New(54,PL_retstack,4,OP*);
-@@ -1029,10 +1039,6 @@ coro_rss (pTHX_ struct coro *coro)
-
- /** coroutine stack handling ************************************************/
-
--static int (*orig_sigelem_get) (pTHX_ SV *sv, MAGIC *mg);
--static int (*orig_sigelem_set) (pTHX_ SV *sv, MAGIC *mg);
--static int (*orig_sigelem_clr) (pTHX_ SV *sv, MAGIC *mg);
--
- /* apparently < 5.8.8 */
- #ifndef MgPV_nolen_const
- #define MgPV_nolen_const(mg) (((((int)(mg)->mg_len)) == HEf_SVKEY) ? \
-@@ -1074,7 +1080,7 @@ coro_sigelem_get (pTHX_ SV *sv, MAGIC *m
- }
- }
-
-- return orig_sigelem_get ? orig_sigelem_get (aTHX_ sv, mg) : 0;
-+ return PL_vtbl_sigelem.svt_get ? PL_vtbl_sigelem.svt_get (aTHX_ sv, mg) : 0;
- }
-
- static int ecb_cold
-@@ -1098,7 +1104,7 @@ coro_sigelem_clr (pTHX_ SV *sv, MAGIC *m
- }
- }
-
-- return orig_sigelem_clr ? orig_sigelem_clr (aTHX_ sv, mg) : 0;
-+ return PL_vtbl_sigelem.svt_clear ? PL_vtbl_sigelem.svt_clear (aTHX_ sv, mg) : 0;
- }
-
- static int ecb_cold
-@@ -1122,9 +1128,42 @@ coro_sigelem_set (pTHX_ SV *sv, MAGIC *m
- }
- }
-
-- return orig_sigelem_set ? orig_sigelem_set (aTHX_ sv, mg) : 0;
-+ return PL_vtbl_sigelem.svt_set ? PL_vtbl_sigelem.svt_set (aTHX_ sv, mg) : 0;
-+}
-+
-+static MGVTBL sigelem_vtbl = {
-+ coro_sigelem_get, /* get */
-+ coro_sigelem_set, /* set */
-+ 0, /* len */
-+ coro_sigelem_clr, /* clear */
-+ 0, /* free */
-+ 0, /* copy */
-+ 0, /* dup */
-+#ifdef MGf_LOCAL
-+ 0, /* local */
-+#endif
-+};
-+
-+static int ecb_cold
-+coro_sig_copy (pTHX_ SV *sv, MAGIC *mg, SV *nsv, const char *key, I32 klen)
-+{
-+ sv_magicext (nsv, mg->mg_obj, 'u', &sigelem_vtbl, key, klen);
-+ return 1;
- }
-
-+static MGVTBL sig_vtbl = {
-+ 0, /* get */
-+ 0, /* set */
-+ 0, /* len */
-+ 0, /* clear */
-+ 0, /* free */
-+ coro_sig_copy, /* copy */
-+ 0, /* dup */
-+#ifdef MGf_LOCAL
-+ 0, /* local */
-+#endif
-+};
-+
- static void
- prepare_nop (pTHX_ struct coro_transfer_args *ta)
- {
-@@ -1395,7 +1434,11 @@ runops_trace (pTHX)
- PUSHMARK (SP);
- PUSHs (&PL_sv_yes);
- PUSHs (fullname);
-+# if PERL_VERSION_ATLEAST(5,24,0)
-+ PUSHs (CxHASARGS (cx) ? sv_2mortal (newRV_inc (PL_curpad[0])) : &PL_sv_undef);
-+#else
- PUSHs (CxHASARGS (cx) ? sv_2mortal (newRV_inc ((SV *)cx->blk_sub.argarray)) : &PL_sv_undef);
-+#endif
- PUTBACK;
- cb = hv_fetch ((HV *)SvRV (coro_current), "_trace_sub_cb", sizeof ("_trace_sub_cb") - 1, 0);
- if (cb) call_sv (*cb, G_KEEPERR | G_EVAL | G_VOID | G_DISCARD);
-@@ -1488,7 +1531,11 @@ transfer_tail (pTHX)
- static void ecb_noinline ecb_cold
- perlish_exit (pTHX)
- {
-- int exitstatus = perl_destruct (PL_curinterp);
-+ int exitstatus;
-+ /* Because we've skipped the "not essential" things, we've not popped all */
-+ /* the scopes, and perl_destruct has an assert() that checks this. */
-+ PL_scopestack_ix = 1;
-+ exitstatus = perl_destruct (PL_curinterp);
- perl_free (PL_curinterp);
- exit (exitstatus);
- }
-@@ -3596,15 +3643,16 @@ BOOT:
- DEFSV;
- ERRSV;
-
-+ HV *sig = GvHV (gv_fetchpv ("SIG", GV_ADD|GV_NOTQUAL, SVt_PVHV));
-+
-+ sv_unmagic ((SV *)sig, PERL_MAGIC_sig);
-+ sv_magicext ((SV *)sig, NULL, PERL_MAGIC_uvar, &sig_vtbl, NULL, 0)->mg_flags |= MGf_COPY;
-+
- cctx_current = cctx_new_empty ();
-
- irsgv = gv_fetchpv ("/" , GV_ADD|GV_NOTQUAL, SVt_PV);
- stdoutgv = gv_fetchpv ("STDOUT", GV_ADD|GV_NOTQUAL, SVt_PVIO);
-
-- orig_sigelem_get = PL_vtbl_sigelem.svt_get; PL_vtbl_sigelem.svt_get = coro_sigelem_get;
-- orig_sigelem_set = PL_vtbl_sigelem.svt_set; PL_vtbl_sigelem.svt_set = coro_sigelem_set;
-- orig_sigelem_clr = PL_vtbl_sigelem.svt_clear; PL_vtbl_sigelem.svt_clear = coro_sigelem_clr;
--
- rv_diehook = newRV_inc ((SV *)gv_fetchpv ("Coro::State::diehook" , 0, SVt_PVCV));
- rv_warnhook = newRV_inc ((SV *)gv_fetchpv ("Coro::State::warnhook", 0, SVt_PVCV));
-
diff --git a/debian/patches/series b/debian/patches/series
index 8f29ca9..84caea7 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -2,4 +2,3 @@ fix-wrong-path-for-interpreter.patch
whatis.patch
spelling.patch
fix-ftbfs-with-longjmp.patch
-coro-5.22.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libcoro-perl.git
More information about the Pkg-perl-cvs-commits
mailing list