--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: buster
User: release.debian....@packages.debian.org
Usertags: pu
X-Debbugs-Cc: debian-p...@lists.debian.org
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
I've uploaded libencode-perl/3.00-1+deb10u1 to buster.
It fixes a memory leak with a patch backported from newer upstream
releases which is already in unstable.
Bug: https://rt.cpan.org/Ticket/Display.html?id=139622
Bug-Debian: #995804
Complete debdiff attached.
Cheers,
gregor
-----BEGIN PGP SIGNATURE-----
iQKTBAEBCgB9FiEE0eExbpOnYKgQTYX6uzpoAYZJqgYFAmGACbhfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEQx
RTEzMTZFOTNBNzYwQTgxMDREODVGQUJCM0E2ODAxODY0OUFBMDYACgkQuzpoAYZJ
qgb/QQ/+M0Xn0YoTRR35v0xJm5MlSjGsOuZsZwM4bPvb0GxILff+FvnArnbnlBVl
x0lq+PY8h6geuL+I8HAfhvWcWWmZqVjlhRgIpUYboT+kY/5eQk9QqsnsI9UtDUWj
BcGQydt6iS3EsJBqiA0/K2Yo0sHbKMDrSUD12zr8WjFcjdy9wcq6IgYyxlUJeI2Y
9QrESHib0tFlnh4pALc96L2xx4yz/2+oWUehl3M7bOTCRtExCJmS+Tz6j89/WbXC
M1BL4xPesGngyd73DcERUyUdYI5YTpgh7BHok9mN8zdG4T+w0x451pt8+gMeHD+m
OdtohYRLH2s6LHSvfqeGKM1rGLLk10yehOA1TQ7zny1ZAzqtynW+bfgYzpo5OI/B
FiT9SUKaI6Ic+eh9YePCbrkfD8wqhxuCc/KP0ipCojJ/7rEY/WzbSZUL1z/2y4SJ
u37+45uQm/UcIWW41alFc1aNav47ZBKFlkUtCacxmWj125pbEFDx/9VnOKE2Xt+S
1/2tF82zNZVuHUnIpi8bEuNutSEPIerfesnTXRzruh5rZ1FTlQO1FXLbseAv8ULY
NK7cTViVb5Rh09ZsdKq5qRC1TDAl4ytvaJLULmG9u9/IrLHtolljFVPgD7YYGiCh
3pxpyHAUhE09Z1NfaLSpavXToQKbp48BkL0WOeTUQzqqQqEB0iQ=
=PigQ
-----END PGP SIGNATURE-----
diff -Nru libencode-perl-3.00/debian/changelog
libencode-perl-3.00/debian/changelog
--- libencode-perl-3.00/debian/changelog 2019-02-06 19:44:26.000000000
+0100
+++ libencode-perl-3.00/debian/changelog 2021-11-01 16:32:22.000000000
+0100
@@ -1,3 +1,13 @@
+libencode-perl (3.00-1+deb10u1) buster; urgency=medium
+
+ * Fix memory leak.
+ Add patch rt_139622_memory-leak.patch, taken from upstream releases 3.13,
+ 3.14, 3.15 to fix a memory leak in Encode.xs.
+ Cf. https://rt.cpan.org/Ticket/Display.html?id=139622
+ (Closes: #995804)
+
+ -- gregor herrmann <gre...@debian.org> Mon, 01 Nov 2021 16:32:22 +0100
+
libencode-perl (3.00-1) unstable; urgency=medium
* Import upstream version 3.00.
diff -Nru libencode-perl-3.00/debian/patches/rt_139622_memory-leak.patch
libencode-perl-3.00/debian/patches/rt_139622_memory-leak.patch
--- libencode-perl-3.00/debian/patches/rt_139622_memory-leak.patch
1970-01-01 01:00:00.000000000 +0100
+++ libencode-perl-3.00/debian/patches/rt_139622_memory-leak.patch
2021-11-01 16:32:22.000000000 +0100
@@ -0,0 +1,82 @@
+Description: Fix memory leak
+Origin: upstream releases 3.13, 3.14, 3.15
+Bug-Debian: https://bugs.debian.org/995804
+Bug: https://rt.cpan.org/Ticket/Display.html?id=139622
+Reviewed-by: gregor herrmann <gre...@debian.org>
+Last-Update: 2021-11-01
+
+--- a/Encode.xs
++++ b/Encode.xs
+@@ -154,7 +154,7 @@ encode_method(pTHX_ const encode_t * enc
+ STRLEN sdone = 0;
+ /* We allocate slen+1.
+ PerlIO dumps core if this value is smaller than this. */
+- SV *dst = newSV(slen+1);
++ SV *dst = sv_2mortal(newSV(slen+1));
+ U8 *d = (U8 *)SvPVX(dst);
+ STRLEN dlen = SvLEN(dst)-1;
+ int code = 0;
+@@ -810,13 +810,12 @@ CODE:
+ tmp = encode_method(aTHX_ enc, enc->t_utf8, src, s, slen, check,
+ &offset, term, &code, fallback_cb);
+ sv_catsv(dst, tmp);
+- SvREFCNT_dec(tmp);
+ SvIV_set(off, (IV)offset);
+ RETVAL = (code == ENCODE_FOUND_TERM);
+ OUTPUT:
+ RETVAL
+
+-SV *
++void
+ Method_decode(obj,src,check_sv = &PL_sv_no)
+ SV * obj
+ SV * src
+@@ -828,6 +827,7 @@ PREINIT:
+ encode_t *enc;
+ U8 *s;
+ STRLEN slen;
++ SV *ret;
+ INIT:
+ SvGETMAGIC(src);
+ SvGETMAGIC(check_sv);
+@@ -841,13 +841,13 @@ CODE:
+ s = modify ? (U8 *)SvPV_force_nomg(src, slen) : (U8 *)SvPV_nomg(src,
slen);
+ if (SvUTF8(src))
+ utf8_safe_downgrade(aTHX_ &src, &s, &slen, modify);
+- RETVAL = encode_method(aTHX_ enc, enc->t_utf8, src, s, slen, check,
++ ret = encode_method(aTHX_ enc, enc->t_utf8, src, s, slen, check,
+ NULL, Nullsv, NULL, fallback_cb);
+- SvUTF8_on(RETVAL);
+-OUTPUT:
+- RETVAL
++ SvUTF8_on(ret);
++ ST(0) = ret;
++ XSRETURN(1);
+
+-SV *
++void
+ Method_encode(obj,src,check_sv = &PL_sv_no)
+ SV * obj
+ SV * src
+@@ -859,6 +859,7 @@ PREINIT:
+ encode_t *enc;
+ U8 *s;
+ STRLEN slen;
++ SV *ret;
+ INIT:
+ SvGETMAGIC(src);
+ SvGETMAGIC(check_sv);
+@@ -872,10 +873,10 @@ CODE:
+ s = modify ? (U8 *)SvPV_force_nomg(src, slen) : (U8 *)SvPV_nomg(src,
slen);
+ if (!SvUTF8(src))
+ utf8_safe_upgrade(aTHX_ &src, &s, &slen, modify);
+- RETVAL = encode_method(aTHX_ enc, enc->f_utf8, src, s, slen, check,
++ ret = encode_method(aTHX_ enc, enc->f_utf8, src, s, slen, check,
+ NULL, Nullsv, NULL, fallback_cb);
+-OUTPUT:
+- RETVAL
++ ST(0) = ret;
++ XSRETURN(1);
+
+ bool
+ Method_needs_lines(obj)
diff -Nru libencode-perl-3.00/debian/patches/series
libencode-perl-3.00/debian/patches/series
--- libencode-perl-3.00/debian/patches/series 1970-01-01 01:00:00.000000000
+0100
+++ libencode-perl-3.00/debian/patches/series 2021-11-01 16:32:22.000000000
+0100
@@ -0,0 +1 @@
+rt_139622_memory-leak.patch
--- End Message ---