perl-modperl-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s...@apache.org
Subject cvs commit: modperl-2.0/xs/APR/PerlIO apr_perlio.c apr_perlio.h
Date Wed, 06 Mar 2002 05:30:27 GMT
stas        02/03/05 21:30:27

  Modified:    xs/APR/PerlIO apr_perlio.c apr_perlio.h
  Log:
  - convert the int APR_PERLIO_HOOK hooks into enums: benefit from
    compile-time checks
  - now can get rid of default: cases using these hooks
  - rewrite the eof() switch to deploy the default case, which was empty and
  causing warnings under gcc3.
                                    <<thanks to doug and gozer!>>
  
  Revision  Changes    Path
  1.11      +12 -26    modperl-2.0/xs/APR/PerlIO/apr_perlio.c
  
  Index: apr_perlio.c
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/xs/APR/PerlIO/apr_perlio.c,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- apr_perlio.c	8 Jan 2002 01:09:19 -0000	1.10
  +++ apr_perlio.c	6 Mar 2002 05:30:27 -0000	1.11
  @@ -304,11 +304,10 @@
   
       rc = apr_file_eof(st->file);
       switch (rc) {
  -      case APR_SUCCESS: 
  -        return 0;
         case APR_EOF:
           return 1;
         default:
  +        return 0;
       }
   
       return -1;
  @@ -357,8 +356,8 @@
   
   /* ***** PerlIO <=> apr_file_t helper functions ***** */
   
  -PerlIO *apr_perlio_apr_file_to_PerlIO(pTHX_ apr_file_t *file,
  -                                      apr_pool_t *pool, int type)
  +PerlIO *apr_perlio_apr_file_to_PerlIO(pTHX_ apr_file_t *file, apr_pool_t *pool,
  +                                      apr_perlio_hook_e type)
   {
       char *mode;
       const char *layers = ":APR";
  @@ -374,8 +373,6 @@
         case APR_PERLIO_HOOK_READ:
           mode = "r";
           break;
  -      default:
  -        /* */
       };
       
       PerlIO_apply_layers(aTHX_ f, mode, layers);
  @@ -394,10 +391,7 @@
       return NULL;
   }
   
  -/*
  - * type: APR_PERLIO_HOOK_READ | APR_PERLIO_HOOK_WRITE
  - */
  -static SV *apr_perlio_PerlIO_to_glob(pTHX_ PerlIO *pio, int type)
  +static SV *apr_perlio_PerlIO_to_glob(pTHX_ PerlIO *pio, apr_perlio_hook_e type)
   {
       /* XXX: modperl_perl_gensym() cannot be used outside of httpd */
       SV *retval = modperl_perl_gensym(aTHX_ "APR::PerlIO"); 
  @@ -413,24 +407,24 @@
         case APR_PERLIO_HOOK_READ:
           IoIFP(GvIOp(gv)) = pio;
           break;
  -      default:
  -        /* */
       };
   
       return sv_2mortal(retval);
   }
   
  -SV *apr_perlio_apr_file_to_glob(pTHX_ apr_file_t *file,
  -                                apr_pool_t *pool, int type)
  +SV *apr_perlio_apr_file_to_glob(pTHX_ apr_file_t *file, apr_pool_t *pool,
  +                                apr_perlio_hook_e type)
   {
       return apr_perlio_PerlIO_to_glob(aTHX_
  -                                     apr_perlio_apr_file_to_PerlIO(aTHX_ file, pool, type),
  +                                     apr_perlio_apr_file_to_PerlIO(aTHX_ file,
  +                                                                   pool, type),
                                        type);
   }
   
   #elif !defined(PERLIO_LAYERS) && !defined(WIN32) /* NOT PERLIO_LAYERS (5.6.1) */
   
  -static FILE *apr_perlio_apr_file_to_FILE(pTHX_ apr_file_t *file, int type)
  +static FILE *apr_perlio_apr_file_to_FILE(pTHX_ apr_file_t *file,
  +                                         apr_perlio_hook_e type)
   {
       FILE *retval;
       char *mode;
  @@ -445,8 +439,6 @@
         case APR_PERLIO_HOOK_READ:
           mode = "r";
           break;
  -      default:
  -        /* */
       };
   
       /* convert to the OS representation of file */
  @@ -466,12 +458,8 @@
       return retval;
   }
   
  -/*
  - * 
  - * type: APR_PERLIO_HOOK_READ | APR_PERLIO_HOOK_WRITE
  - */
  -SV *apr_perlio_apr_file_to_glob(pTHX_ apr_file_t *file,
  -                                apr_pool_t *pool, int type)
  +SV *apr_perlio_apr_file_to_glob(pTHX_ apr_file_t *file, apr_pool_t *pool,
  +                                apr_perlio_hook_e type)
   {
       /* XXX: modperl_perl_gensym() cannot be used outside of httpd */
       SV *retval = modperl_perl_gensym(aTHX_ "APR::PerlIO"); 
  @@ -487,8 +475,6 @@
         case APR_PERLIO_HOOK_READ:
           IoIFP(GvIOp(gv)) = apr_perlio_apr_file_to_FILE(aTHX_ file, type);
           break;
  -      default:
  -        /* */
       };
     
       return sv_2mortal(retval);
  
  
  
  1.2       +12 -8     modperl-2.0/xs/APR/PerlIO/apr_perlio.h
  
  Index: apr_perlio.h
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/xs/APR/PerlIO/apr_perlio.h,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- apr_perlio.h	17 Dec 2001 16:20:27 -0000	1.1
  +++ apr_perlio.h	6 Mar 2002 05:30:27 -0000	1.2
  @@ -14,8 +14,10 @@
   #include "apr_optional.h"
   #endif
   
  -#define APR_PERLIO_HOOK_READ  0
  -#define APR_PERLIO_HOOK_WRITE 1
  +typedef enum {
  +    APR_PERLIO_HOOK_READ,
  +    APR_PERLIO_HOOK_WRITE
  +} apr_perlio_hook_e;
   
   void apr_perlio_init(pTHX);
   
  @@ -25,19 +27,21 @@
   #ifndef MP_SOURCE_SCAN
   
   #ifdef PERLIO_LAYERS
  -PerlIO *apr_perlio_apr_file_to_PerlIO(pTHX_ apr_file_t *file,
  -                                      apr_pool_t *pool, int type);
  +PerlIO *apr_perlio_apr_file_to_PerlIO(pTHX_ apr_file_t *file, apr_pool_t *pool,
  +                                      apr_perlio_hook_e type);
   APR_DECLARE_OPTIONAL_FN(PerlIO *,
                           apr_perlio_apr_file_to_PerlIO,
  -                        (pTHX_ apr_file_t *file, apr_pool_t *pool, int type));
  +                        (pTHX_ apr_file_t *file, apr_pool_t *pool,
  +                         apr_perlio_hook_e type));
   #endif /* PERLIO_LAYERS */
   
   
  -SV *apr_perlio_apr_file_to_glob(pTHX_ apr_file_t *file,
  -                                      apr_pool_t *pool, int type);
  +SV *apr_perlio_apr_file_to_glob(pTHX_ apr_file_t *file, apr_pool_t *pool,
  +                                apr_perlio_hook_e type);
   APR_DECLARE_OPTIONAL_FN(SV *,
                           apr_perlio_apr_file_to_glob,
  -                        (pTHX_ apr_file_t *file, apr_pool_t *pool, int type));
  +                        (pTHX_ apr_file_t *file, apr_pool_t *pool,
  +                         apr_perlio_hook_e type));
   #endif /* MP_SOURCE_SCAN */
   
   #endif /* APR_PERLIO_H */
  
  
  

Mime
View raw message