develooper Front page | perl.perl5.porters | Postings from November 1999

Patch for ByteLoader and PerlIO

From:
Chip Salzenberg
Date:
November 24, 1999 22:25
Subject:
Patch for ByteLoader and PerlIO
Message ID:
19991124222530.A21850@perlsupport.com
This patch lets me compile ByteLoader when using PerlIO and sfio.

Index: ext/ByteLoader/ByteLoader.xs
***************
*** 12,15 ****
--- 12,38 ----
  #endif
  
+ #ifdef PerlIO_getc
+ static int
+ xgetc(PerlIO *io)
+ {
+     return PerlIO_getc(io);
+ }
+ #else
+ #  define xgetc PerlIO_getc
+ #endif
+ 
+ #ifdef USE_PERLIO
+ static int
+ xfread(char *buf, size_t size, size_t n, PerlIO *io)
+ {
+     int i = PerlIO_read(io, buf, n * size);
+     if (i > 0)
+ 	i /= size;
+     return i;
+ }
+ #else
+ #  define xgetc fread
+ #endif
+ 
  static void
  freadpv(U32 len, void *data, XPV *pv)
***************
*** 31,36 ****
  
      bs.data = PL_rsfp;
!     bs.pfgetc = (int(*) (void*))fgetc;
!     bs.pfread = (int(*) (char*,size_t,size_t,void*))fread;
      bs.pfreadpv = freadpv;
  
--- 54,59 ----
  
      bs.data = PL_rsfp;
!     bs.pfgetc = (int(*) (void*))xgetc;
!     bs.pfread = (int(*) (char*,size_t,size_t,void*))xfread;
      bs.pfreadpv = freadpv;
  

-- 
Chip Salzenberg             - a.k.a. -              <chip@valinux.com>
     "Fleagal.  Bingo.  Drooper.  Snork.  They're cops."   //MST3K



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About