gozer       2004/08/25 15:32:02

  Modified:    .        Changes
               t/response/TestAPI uri.pm
               todo     release
               xs/APR/URI APR__URI.h
               xs/maps  apr_functions.map
               xs/tables/current/ModPerl FunctionTable.pm
  Log:
  Added APR::URI->rpath method. Returns the path of an uri minus
  path_info, if any.
  
  Revision  Changes    Path
  1.470     +3 -0      modperl-2.0/Changes
  
  Index: Changes
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/Changes,v
  retrieving revision 1.469
  retrieving revision 1.470
  diff -u -r1.469 -r1.470
  --- Changes   25 Aug 2004 21:51:18 -0000      1.469
  +++ Changes   25 Aug 2004 22:31:58 -0000      1.470
  @@ -12,6 +12,9 @@
   
   =item 1.99_17-dev
   
  +Added APR::URI->rpath method. Returns the path of an uri minus
  +path_info, if any. [Gozer]
  +
   moved Apache::current_callback() to ModPerl::Util::current_callback
   where it belongs [Gozer]
   
  
  
  
  1.18      +6 -1      modperl-2.0/t/response/TestAPI/uri.pm
  
  Index: uri.pm
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/t/response/TestAPI/uri.pm,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- uri.pm    8 Jul 2004 05:29:42 -0000       1.17
  +++ uri.pm    25 Aug 2004 22:31:59 -0000      1.18
  @@ -20,7 +20,7 @@
   sub handler {
       my $r = shift;
   
  -    plan $r, tests => 22;
  +    plan $r, tests => 24;
   
       $r->args('query');
   
  @@ -146,13 +146,18 @@
   
           # new request
           $newr->parse_uri($url_string);
  +        $newr->path_info('/bar');
           ok t_cmp($newr->uri, $path, "uri");
           ok t_cmp($newr->args, $query, "args");
  +        ok t_cmp($newr->path_info, '/bar', "path_info");
   
           my $puri = $newr->parsed_uri;
           ok t_cmp($puri->path,     $path,     "path");
           ok t_cmp($puri->query,    $query,    "query");
           ok t_cmp($puri->fragment, $fragment, "fragment");
  +        
  +        #rpath
  +        ok t_cmp($puri->rpath, '/foo', "rpath");
   
           my $port = 6767;
           $puri->port($port);
  
  
  
  1.53      +0 -2      modperl-2.0/todo/release
  
  Index: release
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/todo/release,v
  retrieving revision 1.52
  retrieving revision 1.53
  diff -u -r1.52 -r1.53
  --- release   25 Aug 2004 21:51:20 -0000      1.52
  +++ release   25 Aug 2004 22:31:59 -0000      1.53
  @@ -8,8 +8,6 @@
     should be rewritten to clearly explain how to build static and
     dynamic mod_perl (each separately).
   
  -* APR::URI missing $uri->rpath (was in mp1)
  -
   * check other todo/features_missing items (some of them might be
     critical for 2.0 release, since missing methods might be a problem
     for migration)
  
  
  
  1.9       +20 -0     modperl-2.0/xs/APR/URI/APR__URI.h
  
  Index: APR__URI.h
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/xs/APR/URI/APR__URI.h,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- APR__URI.h        28 May 2004 01:36:40 -0000      1.8
  +++ APR__URI.h        25 Aug 2004 22:32:00 -0000      1.9
  @@ -70,3 +70,23 @@
       return port_str;
   }
   
  +static MP_INLINE
  +SV *mpxs_APR__URI_rpath(pTHX_ apr_uri_t *apr_uri)
  +{
  +    modperl_uri_t *uri = (modperl_uri_t *)apr_uri;
  +    
  +    if(uri->path_info) {
  +        int uri_len = strlen(uri->uri.path);
  +        int n = strlen(uri->path_info);
  +        int set = uri_len - n;
  +        if (set > 0) {
  +            return newSVpv(uri->uri.path, set);
  +        }
  +    }
  +    else {
  +        if (uri->uri.path) {
  +            return newSVpv(uri->uri.path, 0);
  +        }
  +    }
  +    return Nullsv;
  +}
  
  
  
  1.85      +1 -0      modperl-2.0/xs/maps/apr_functions.map
  
  Index: apr_functions.map
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/xs/maps/apr_functions.map,v
  retrieving revision 1.84
  retrieving revision 1.85
  diff -u -r1.84 -r1.85
  --- apr_functions.map 20 Aug 2004 21:11:00 -0000      1.84
  +++ apr_functions.map 25 Aug 2004 22:32:01 -0000      1.85
  @@ -582,6 +582,7 @@
                     uptr, flags=APR_URI_UNP_OMITPASSWORD | unparse
    #special case to set both uri->port and uri->port_str
    mpxs_APR__URI_port | | uri, portsv=Nullsv
  + mpxs_APR__URI_rpath
    apr_uri_port_of_scheme
   
   !MODULE=Apache::XML
  
  
  
  1.176     +15 -1     modperl-2.0/xs/tables/current/ModPerl/FunctionTable.pm
  
  Index: FunctionTable.pm
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/xs/tables/current/ModPerl/FunctionTable.pm,v
  retrieving revision 1.175
  retrieving revision 1.176
  diff -u -r1.175 -r1.176
  --- FunctionTable.pm  22 Aug 2004 20:47:37 -0000      1.175
  +++ FunctionTable.pm  25 Aug 2004 22:32:01 -0000      1.176
  @@ -2,7 +2,7 @@
   
   # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   # ! WARNING: generated by ModPerl::ParseSource/0.01
  -# !          Fri Aug 20 12:01:12 2004
  +# !          Wed Aug 25 14:56:13 2004
   # !          do NOT edit, any changes will be lost !
   # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   
  @@ -5708,6 +5708,20 @@
         {
           'type' => 'SV *',
           'name' => 'portsv'
  +      }
  +    ]
  +  },
  +  {
  +    'return_type' => 'SV *',
  +    'name' => 'mpxs_APR__URI_rpath',
  +    'args' => [
  +      {
  +        'type' => 'PerlInterpreter *',
  +        'name' => 'my_perl'
  +      },
  +      {
  +        'type' => 'apr_uri_t *',
  +        'name' => 'apr_uri'
         }
       ]
     },
  
  
  

Reply via email to