git://git.exim.org
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
String handling: refactor the expanding-string routines and users to use a descriptor...
[exim.git]
/
src
/
src
/
perl.c
diff --git
a/src/src/perl.c
b/src/src/perl.c
index 92218a6efb1e5d33ba9c5289dc53a9b7e9337a03..6966d73b5adf96d446e376f2e9936dc74b85e148 100644
(file)
--- a/
src/src/perl.c
+++ b/
src/src/perl.c
@@
-60,7
+60,7
@@
XS(xs_expand_string)
str = expand_string(US SvPV(ST(0), len));
ST(0) = sv_newmortal();
if (str != NULL)
str = expand_string(US SvPV(ST(0), len));
ST(0) = sv_newmortal();
if (str != NULL)
- sv_setpv(ST(0),
(const char *)
str);
+ sv_setpv(ST(0),
CCS
str);
else if (!expand_string_forcedfail)
croak("syntax error in Exim::expand_string argument: %s",
expand_string_message);
else if (!expand_string_forcedfail)
croak("syntax error in Exim::expand_string argument: %s",
expand_string_message);
@@
-150,9
+150,8
@@
cleanup_perl(void)
interp_perl = 0;
}
interp_perl = 0;
}
-uschar *
-call_perl_cat(uschar *yield, int *sizep, int *ptrp, uschar **errstrp,
- uschar *name, uschar **arg)
+gstring *
+call_perl_cat(gstring * yield, uschar **errstrp, uschar *name, uschar **arg)
{
dSP;
SV *sv;
{
dSP;
SV *sv;
@@
-186,7
+185,7
@@
call_perl_cat(uschar *yield, int *sizep, int *ptrp, uschar **errstrp,
return NULL;
}
str = US SvPV(sv, len);
return NULL;
}
str = US SvPV(sv, len);
- yield = string_catn(yield, s
izep, ptrp, s
tr, (int)len);
+ yield = string_catn(yield, str, (int)len);
FREETMPS;
LEAVE;
FREETMPS;
LEAVE;