This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
ext/ + -Wall
[perl5.git] / ext / Encode / Encode.xs
index ef21d5b..b9af4d6 100644 (file)
@@ -1,3 +1,4 @@
+#define PERL_NO_GET_CONTEXT
 #include "EXTERN.h"
 #include "perl.h"
 #include "XSUB.h"
@@ -8,6 +9,7 @@
 #include "Symbols.h"
 
 #define UNIMPLEMENTED(x,y) y x (SV *sv, char *encoding) {   \
+                         dTHX; \
                          Perl_croak(aTHX_ "panic_unimplemented"); \
                         return (y)0; /* fool picky compilers */ \
                          }
@@ -51,6 +53,7 @@ typedef struct
 SV *
 PerlIOEncode_getarg(PerlIO *f)
 {
+ dTHX;
  PerlIOEncode *e = PerlIOSelf(f,PerlIOEncode);
  SV *sv = &PL_sv_undef;
  if (e->enc)
@@ -61,7 +64,7 @@ PerlIOEncode_getarg(PerlIO *f)
    PUSHMARK(sp);
    XPUSHs(e->enc);
    PUTBACK;
-   if (perl_call_method("name",G_SCALAR) == 1)
+   if (call_method("name",G_SCALAR) == 1)
     {
      SPAGAIN;
      sv = newSVsv(POPs);
@@ -84,7 +87,7 @@ PerlIOEncode_pushed(PerlIO *f, const char *mode, SV *arg)
  PUSHMARK(sp);
  XPUSHs(arg);
  PUTBACK;
- if (perl_call_pv("Encode::find_encoding",G_SCALAR) != 1)
+ if (call_pv("Encode::find_encoding",G_SCALAR) != 1)
   {
    /* should never happen */
    Perl_die(aTHX_ "Encode::find_encoding did not return a value");
@@ -188,7 +191,7 @@ PerlIOEncode_fill(PerlIO *f)
    XPUSHs(e->bufsv);
    XPUSHs(&PL_sv_yes);
    PUTBACK;
-   if (perl_call_method("decode",G_SCALAR) != 1)
+   if (call_method("decode",G_SCALAR) != 1)
     code = -1;
    SPAGAIN;
    uni = POPs;
@@ -246,7 +249,7 @@ PerlIOEncode_flush(PerlIO *f)
    XPUSHs(e->bufsv);
    XPUSHs(&PL_sv_yes);
    PUTBACK;
-   if (perl_call_method("encode",G_SCALAR) != 1)
+   if (call_method("encode",G_SCALAR) != 1)
     code = -1;
    SPAGAIN;
    str = POPs;