Author: stas
Date: Fri Dec 10 14:16:29 2004
New Revision: 111551

URL: http://svn.apache.org/viewcvs?view=rev&rev=111551
Log:
- call the internal anonsub 'anon$id'
- improve the tracing of anon-subs, showing their internal name, rather 
than (null)

Modified:
   perl/modperl/trunk/src/modules/perl/modperl_callback.c
   perl/modperl/trunk/src/modules/perl/modperl_handler.c
   perl/modperl/trunk/src/modules/perl/modperl_mgv.c

Modified: perl/modperl/trunk/src/modules/perl/modperl_callback.c
Url: 
http://svn.apache.org/viewcvs/perl/modperl/trunk/src/modules/perl/modperl_callback.c?view=diff&rev=111551&p1=perl/modperl/trunk/src/modules/perl/modperl_callback.c&r1=111550&p2=perl/modperl/trunk/src/modules/perl/modperl_callback.c&r2=111551
==============================================================================
--- perl/modperl/trunk/src/modules/perl/modperl_callback.c      (original)
+++ perl/modperl/trunk/src/modules/perl/modperl_callback.c      Fri Dec 10 
14:16:29 2004
@@ -49,7 +49,7 @@
         GV *gv;
         if (!handler->mgv_obj) {
             Perl_croak(aTHX_ "panic: %s method handler object is NULL!",
-                       handler->name);
+                       modperl_handler_name(handler));
         }
         gv = modperl_mgv_lookup(aTHX_ handler->mgv_obj);
         XPUSHs(modperl_mgv_sv(gv));
@@ -262,8 +262,8 @@
     for (i=0; i<av->nelts; i++) {
         status = modperl_callback(aTHX_ handlers[i], p, r, s, av_args);
         
-        MP_TRACE_h(MP_FUNC, "%s returned %d\n",
-                   handlers[i]->name, status);
+        MP_TRACE_h(MP_FUNC, "callback '%s' returned %d\n",
+                   modperl_handler_name(handlers[i]), status);
 
         /* follow Apache's lead and let OK terminate the phase for
          * MP_HOOK_RUN_FIRST handlers.  MP_HOOK_RUN_ALL handlers keep

Modified: perl/modperl/trunk/src/modules/perl/modperl_handler.c
Url: 
http://svn.apache.org/viewcvs/perl/modperl/trunk/src/modules/perl/modperl_handler.c?view=diff&rev=111551&p1=perl/modperl/trunk/src/modules/perl/modperl_handler.c&r1=111550&p2=perl/modperl/trunk/src/modules/perl/modperl_handler.c&r2=111551
==============================================================================
--- perl/modperl/trunk/src/modules/perl/modperl_handler.c       (original)
+++ perl/modperl/trunk/src/modules/perl/modperl_handler.c       Fri Dec 10 
14:16:29 2004
@@ -101,7 +101,7 @@
     modperl_mgv_t *anon = 
         (modperl_mgv_t *)apr_pcalloc(p, sizeof(*anon));
 
-    anon->name = apr_psprintf(p, "%d", modperl_global_anon_cnt_next());
+    anon->name = apr_psprintf(p, "anon%d", modperl_global_anon_cnt_next());
     anon->len  = strlen(anon->name);
     PERL_HASH(anon->hash, anon->name, anon->len);
 
@@ -144,7 +144,7 @@
 
     if ((he = hv_fetch_he(hv, anon->name, anon->len, anon->hash))) {
         sv = HeVAL(he);
-        MP_TRACE_h(MP_FUNC, "anonsub get '%s'", anon->name);
+        MP_TRACE_h(MP_FUNC, "anonsub gets name '%s'", anon->name);
     }
     else {
         Perl_croak(aTHX_ "can't find ANONSUB's '%s' entry", anon->name);
@@ -184,7 +184,13 @@
 {
     /* a handler containing an anonymous sub doesn't have a normal sub
      * name */
-    return handler->name ? handler->name : "anonymous sub";
+    if (handler->name) {
+        return handler->name;
+    }
+    else {
+        /* anon sub stores the internal modperl name in mgv_obj */
+        return handler->mgv_obj->name;
+    }
 }
 
 
@@ -205,7 +211,8 @@
     }
 #endif
 
-    MP_TRACE_h_do(MpHandler_dump_flags(handler, handler->name));
+    MP_TRACE_h_do(MpHandler_dump_flags(handler,
+                                       modperl_handler_name(handler)));
 
     if (!MpHandlerPARSED(handler)) {
         apr_pool_t *rp = duped ? p : s->process->pconf;
@@ -216,7 +223,7 @@
                    "attempting to resolve using %s pool 0x%lx\n",
                    modperl_pid_tid(p),
                    modperl_server_desc(s, p),
-                   handler->name,
+                   modperl_handler_name(handler),
                    duped ? "current" : "server conf",
                    (unsigned long)rp);
 
@@ -234,7 +241,7 @@
 modperl_handler_t *modperl_handler_dup(apr_pool_t *p,
                                        modperl_handler_t *h)
 {
-    MP_TRACE_h(MP_FUNC, "dup handler %s\n", h->name);
+    MP_TRACE_h(MP_FUNC, "dup handler %s\n", modperl_handler_name(h));
     return modperl_handler_new(p, h->name);
 }
 

Modified: perl/modperl/trunk/src/modules/perl/modperl_mgv.c
Url: 
http://svn.apache.org/viewcvs/perl/modperl/trunk/src/modules/perl/modperl_mgv.c?view=diff&rev=111551&p1=perl/modperl/trunk/src/modules/perl/modperl_mgv.c&r1=111550&p2=perl/modperl/trunk/src/modules/perl/modperl_mgv.c&r2=111551
==============================================================================
--- perl/modperl/trunk/src/modules/perl/modperl_mgv.c   (original)
+++ perl/modperl/trunk/src/modules/perl/modperl_mgv.c   Fri Dec 10 14:16:29 2004
@@ -451,7 +451,8 @@
             }
 #endif
             MP_TRACE_h(MP_FUNC, "%s already resolved in server %s\n",
-                       handler->name, modperl_server_desc(s, p));
+                       modperl_handler_name(handler),
+                       modperl_server_desc(s, p));
         }
         else {
             if (MpSrvAUTOLOAD(scfg)) {

Reply via email to