tadd a case for mailto: urls for link references - webdump - [FORK] git://git.codemadness.org/webdump
 (HTM) git clone git://git.z3bra.org/webdump.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit dc6abb72ba42569b71ac27b79ca69f29263a01c2
 (DIR) parent 4668757e454aab81f013856c4320bec8710e427c
 (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
       Date:   Fri, 29 Nov 2019 15:22:54 +0100
       
       add a case for mailto: urls for link references
       
       Diffstat:
         M webdump.c                           |       9 +++++++--
       
       1 file changed, 7 insertions(+), 2 deletions(-)
       ---
 (DIR) diff --git a/webdump.c b/webdump.c
       t@@ -667,6 +667,7 @@ static void
        xmltagstartparsed(XMLParser *p, const char *t, size_t tl, int isshort)
        {
                struct node *cur, *parent = NULL;
       +        char absurl[1024];
                int i;
        
                /* temporary replace the callback except the reader and end of tag
       t@@ -689,8 +690,12 @@ xmltagstartparsed(XMLParser *p, const char *t, size_t tl, int isshort)
        #ifdef LINKREFS
                /* show links as reference at the bottom */
                if (showlinkrefs && src[0]) {
       -                char absurl[1024];
       -                if (absuri(absurl, sizeof(absurl), src, basehref) != -1) {
       +                absurl[0] = '\0';
       +                if (!strncmp(src, "mailto:", sizeof("mailto:") - 1))
       +                        strlcpy(absurl, src, sizeof(absurl));
       +                else if (absuri(absurl, sizeof(absurl), src, basehref) == -1)
       +                        absurl[0] = '\0';
       +                if (absurl[0]) {
                                if (!links_head)
                                        links_cur = links_head = ecalloc(1, sizeof(*links_head));
                                else