+#define PERL_NO_GET_CONTEXT
+
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"
#include "EBCDIC.h"
#include "Symbols.h"
-#define UNIMPLEMENTED(x,y) y x (SV *sv, char *encoding) { \
+
+#define UNIMPLEMENTED(x,y) y x (SV *sv, char *encoding) {dTHX; \
Perl_croak(aTHX_ "panic_unimplemented"); \
return (y)0; /* fool picky compilers */ \
}
SV *
PerlIOEncode_getarg(PerlIO *f)
{
+ dTHX;
PerlIOEncode *e = PerlIOSelf(f,PerlIOEncode);
SV *sv = &PL_sv_undef;
if (e->enc)
{
e->enc = Nullsv;
errno = EINVAL;
- Perl_warner(aTHX_ WARN_IO, "Cannot find encoding \"%_\"", arg);
+ Perl_warner(aTHX_ WARN_IO, "Cannot find encoding \"%"SVf"\"", arg);
return -1;
}
SvREFCNT_inc(e->enc);
PROTOTYPES: ENABLE
void
-Method_decode(obj,src,check = 0)
+Method_decode(obj,src,check = FALSE)
SV * obj
SV * src
-int check
+bool check
CODE:
{
encode_t *enc = INT2PTR(encode_t *, SvIV(SvRV(obj)));
}
void
-Method_encode(obj,src,check = 0)
+Method_encode(obj,src,check = FALSE)
SV * obj
SV * src
-int check
+bool check
CODE:
{
encode_t *enc = INT2PTR(encode_t *, SvIV(SvRV(obj)));
STRLEN len;
U8 *s = (U8*)SvPV(sv, len);
+ RETVAL = 0;
if (SvTRUE(check)) {
/* Must do things the slow way */
U8 *dest;