From: Ruediger Pluem Date: Tue, 2 Jun 2020 12:11:39 +0000 (+0000) Subject: Merge r1876679 from trunk: X-Git-Tag: 2.4.44~97 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dd97ad5d8324337dba76aead8e7cf8e402fc42da;p=thirdparty%2Fapache%2Fhttpd.git Merge r1876679 from trunk: gdbinit: print bucket fd when available. [skip ci] Submitted by: ylavic Reviewed by: rpluem git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1878392 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/.gdbinit b/.gdbinit index 2a3dddad35c..76ddc548dd0 100644 --- a/.gdbinit +++ b/.gdbinit @@ -151,18 +151,13 @@ define dump_bucket_ex print_bkt_datacol "rc" "n/%c" 'a' $sh else - if (($bucket->type == &apr_bucket_type_file) || \ - ($bucket->type == &apr_bucket_type_pipe) || \ - ($bucket->type == &apr_bucket_type_socket)) + if ($bucket->type == &apr_bucket_type_file) - # buckets that contain data not in memory (ie not printable) - - print_bkt_datacol "contents" "[**unprintable**%c" ']' $sh - printf " " - if $bucket->type == &apr_bucket_type_file - set $refcount = ((apr_bucket_refcount *)$bucket->data)->refcount - print_bkt_datacol "rc" "%d" $refcount $sh - end + # file bucket, can show fd and refcount + set $fd = ((apr_bucket_file*)$bucket->data)->fd->filedes + print_bkt_datacol "contents" "[***file***] fd=%-6ld" (long)$fd $sh + set $refcount = ((apr_bucket_refcount *)$bucket->data)->refcount + print_bkt_datacol "rc" "%d" $refcount $sh else if (($bucket->type == &apr_bucket_type_heap) || \ @@ -230,8 +225,27 @@ define dump_bucket_ex end else - # 3rd-party bucket type - print_bkt_datacol "contents" "[**unknown**%c" ']' $sh + if ($bucket->type == &apr_bucket_type_pipe) + + # pipe bucket, can show fd + set $fd = ((apr_file_t*)$bucket->data)->filedes; + print_bkt_datacol "contents" "[***pipe***] fd=%-6ld" (long)$fd $sh + + else + if ($bucket->type == &apr_bucket_type_socket) + + # file bucket, can show fd + set $fd = ((apr_socket_t*)$bucket->data)->socketdes; + print_bkt_datacol "contents" "[**socket**] fd=%-6ld" (long)$fd $sh + + else + + # 3rd-party bucket type + print_bkt_datacol "contents" "[**opaque**]%-10c" ' ' $sh + end + end + + # no refcount printf " " print_bkt_datacol "rc" "n/%c" 'a' $sh end