dougm       01/09/15 11:21:48

  Modified:    xs/APR/Table APR__Table.h
  Log:
  avoid dTHX; in APR::Table->do
  
  Revision  Changes    Path
  1.2       +7 -3      modperl-2.0/xs/APR/Table/APR__Table.h
  
  Index: APR__Table.h
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/xs/APR/Table/APR__Table.h,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- APR__Table.h      2001/09/15 18:17:31     1.1
  +++ APR__Table.h      2001/09/15 18:21:48     1.2
  @@ -1,6 +1,7 @@
   typedef struct {
       SV *cv;
       apr_table_t *filter; /*XXX: or maybe a mgv ? */
  +    PerlInterpreter *perl;
   } mpxs_table_do_cb_data_t;
   
   typedef int (*mpxs_apr_table_do_cb_t)(void *, const char *, const char *);
  @@ -8,10 +9,10 @@
   static int mpxs_apr_table_do_cb(void *data,
                                   const char *key, const char *val)
   {
  -    dTHX; /*XXX*/
  +    mpxs_table_do_cb_data_t *tdata = (mpxs_table_do_cb_data_t *)data;
  +    dTHXa(tdata->perl);
       dSP;
       int rv = 0;
  -    mpxs_table_do_cb_data_t *tdata = (mpxs_table_do_cb_data_t *)data;
   
       /* Skip completely if something is wrong */
       if (!(tdata && tdata->cv && key && val)) {
  @@ -56,7 +57,10 @@
            
       tdata.cv = sub;
       tdata.filter = NULL;
  -    
  +#ifdef USE_ITHREADS
  +    tdata.perl = aTHX;
  +#endif
  +
       if (items > 2) {
           STRLEN len;
           tdata.filter = apr_table_make(table->a.pool, items-2);
  
  
  

Reply via email to