[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