]> granicus.if.org Git - apache/commitdiff
* .gdbinit: Add dump_filter_chain macro.
authorJoe Orton <jorton@apache.org>
Mon, 7 Jun 2010 18:43:06 +0000 (18:43 +0000)
committerJoe Orton <jorton@apache.org>
Mon, 7 Jun 2010 18:43:06 +0000 (18:43 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@952361 13f79535-47bb-0310-9956-ffa450edef68

.gdbinit

index 5f47e25148023168a9e61bc48af8985dd88c09ca..5b483e6616093f7f11c8ebc827d16ecac7c8c174 100644 (file)
--- a/.gdbinit
+++ b/.gdbinit
@@ -273,6 +273,32 @@ document dump_filters
     Print filter chain info
 end
 
+define dump_filter_chain
+    set $r = $arg0
+    set $f = $r->output_filters
+    while $f
+        if $f == $r->output_filters
+            printf "r->output_filters =>\n"
+        end
+        if $f == $r->proto_output_filters
+            printf "r->proto_output_filters =>\n"
+        end
+        if $f == $r->connection->output_filters
+            printf "r->connection->output_filters =>\n"
+        end
+        
+        printf "  %s(0x%lx): type=%d, ctx=0x%lx, r=%s(0x%lx), c=0x%lx\n", \
+          $f->frec->name, (unsigned long)$f, $f->frec->ftype, (unsigned long)$f->ctx, \
+          $f->r == $r ? "r" : ($f->r == 0L ? "null" : \
+          ($f->r == $r->main ? "r->main" : "????")), $f->r, $f->c
+
+        set $f = $f->next
+    end
+end
+document dump_filter_chain
+    Print filter chain info given a request_rec pointer
+end
+
 define dump_process_rec
     set $p = $arg0
     printf "process_rec=0x%lx:\n", (unsigned long)$p