-
Notifications
You must be signed in to change notification settings - Fork 578
Bleadperl v5.31.1-58-g73cdf3a836 breaks YVES/Sereal-Decoder-4.007.tar.gz on -DDEBUGGING builds #17114
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
From @iabynOn Sun, Jul 28, 2019 at 09:58:58AM -0700, (Andreas J. Koenig) (via RT) wrote:
THX_ck_entersub_args_sereal_decoder() in Decoder.xs wasn't setting the Inline Patch--- Decoder.xs- 2019-08-05 15:33:13.414931329 +0100
+++ Decoder.xs 2019-08-05 17:05:14.761365063 +0100
@@ -223,13 +223,17 @@
if (arity > min_arity)
opopt |= OPOPT_OUTARG_HEADER;
- OpMORESIB_set(pushop, cvop);
- OpLASTSIB_set(lastargop, op_parent(lastargop));
+ /* cut out all ops between the pushmark and the RV2CV */
+ op_sibling_splice(NULL, pushop, arity, NULL);
+ /* then throw everything else out */
op_free(entersubop);
- newop = newUNOP(OP_NULL, 0, firstargop);
+ newop = newUNOP(OP_NULL, 0, NULL);
newop->op_type = OP_CUSTOM;
newop->op_private = opopt;
newop->op_ppaddr = opopt & OPOPT_LOOKS_LIKE ? THX_pp_looks_like_sereal : THX_pp_sereal_decode;
+ /* attach the spliced-out args as children of the custom op, while
+ * deleting the stub op created by newUNOP() */
+ op_sibling_splice(newop, NULL, 1, firstargop);
return newop;
}
-- You never really learn to swear until you learn to drive. |
The RT System itself - Status changed from 'new' to 'open' |
From @jkeenanOn Mon, 05 Aug 2019 16:09:50 GMT, davem wrote:
Entered comment in Sereal/Sereal#207 citing this patch. Thank you very much. -- |
This patch was originally provided by Dave Mitchell inline as a response to a "Blead Breaks CPAN" report in the Perl 5 bug queue (originally rt.perl.org; now github.com/Perl/perl5/issues). Dave's comment in original ticket. THX_ck_entersub_args_sereal_decoder() in Decoder.xs wasn't setting the parent link correctly when munging an op tree. The following diff makes all tests pass on blead. I haven't tested against older perls. References: Perl/perl5#17114 (originally https://rt-archive.perl.org/perl5/Ticket/Display.html?id=134320) Sereal#207
I have made the patch originally submitted inline by @iabyn into a pull request to the Sereal repository: Sereal/Sereal#210 |
Which was merged. I assume we can close this? |
Yes, I believe all the distros downstream from Sereal are now PASSing again. Thank you very much. |
Migrated from rt.perl.org#134320 (status was 'open')
Searchable as RT134320$
The text was updated successfully, but these errors were encountered: