From: Tony Cook Date: Fri, 24 May 2013 13:05:13 +0000 (+1000) Subject: [rt #69243] use names for i_tags_add() instead of ST(n) and handle magic X-Git-Tag: v0.96_01~16^2~7 X-Git-Url: http://git.imager.perl.org/imager.git/commitdiff_plain/a4da28d76c74e2eaf971c97bbdb793b380328f39 [rt #69243] use names for i_tags_add() instead of ST(n) and handle magic The code checked SvOK() without SvGETMAGIC() --- diff --git a/Imager.xs b/Imager.xs index 3dc6d0b2..a4ab7615 100644 --- a/Imager.xs +++ b/Imager.xs @@ -3649,21 +3649,25 @@ i_tags_addn(im, name_sv, code, idata) RETVAL undef_int -i_tags_add(im, name, code, data, idata) +i_tags_add(im, name_sv, code, data_sv, idata) Imager::ImgRaw im + SV *name_sv int code + SV *data_sv int idata PREINIT: char *name; char *data; STRLEN len; CODE: - if (SvOK(ST(1))) - name = SvPV(ST(1), len); + SvGETMAGIC(name_sv); + if (SvOK(name_sv)) + name = SvPV_nomg(name_sv, len); else name = NULL; - if (SvOK(ST(3))) - data = SvPV(ST(3), len); + SvGETMAGIC(data_sv); + if (SvOK(data_sv)) + data = SvPV(data_sv, len); else { data = NULL; len = 0;