support/htcacheclean.c:513: error: UNINITIALIZED_VALUE
  The value read from dinfo.size was never initialized.

support/htcacheclean.c:513:61: 
511.                                                     round_up((apr_size_t)hinfo.size, round),
512.                                                     round_up(
513.                                                             disk_info.has_body ? (apr_size_t)dinfo.size
                                                                 ^
514.                                                                     : 0, round),
515.                                                     disk_info.status,

static int list_urls(char *path, apr_pool_t *pool, apr_off_t round)
{
    apr_dir_t *dir;
    apr_finfo_t info;
    apr_size_t len;
    apr_pool_t *p;
    apr_file_t *fd;
    const char *ext, *nextpath;
    char *url;
    apr_uint32_t format;
    disk_cache_info_t disk_info;
    apr_pool_create(&p, pool);
    if (apr_dir_open(&dir, path, p) != APR_SUCCESS) {
        return 1;
    }
    while (apr_dir_read(&info, 0, dir) == APR_SUCCESS && !interrupted) {
        if (info.filetype == APR_DIR) {
            if (!strcmp(info.name, ".") || !strcmp(info.name, "..")) {
                continue;
            }
            if (list_urls(apr_pstrcat(p, path, "/", info.name, NULL), pool, round)) {
                return 1;
            }
        }
        else if (info.filetype == APR_REG) {
            ext = strchr(info.name, '.');
            if (ext && !strcasecmp(ext, CACHE_HEADER_SUFFIX)) {
                nextpath = apr_pstrcat(p, path, "/", info.name, NULL);
                if (apr_file_open(&fd, nextpath, APR_FOPEN_READ
                        | APR_FOPEN_BINARY, APR_OS_DEFAULT, p) == APR_SUCCESS) {
                    len = sizeof(format);
                    if (apr_file_read_full(fd, &format, len, &len)
                            == APR_SUCCESS) {
                        if (format == DISK_FORMAT_VERSION) {
                            apr_off_t offset = 0;
                            apr_file_seek(fd, APR_SET, &offset);
                            len = sizeof(disk_cache_info_t);
                            if (apr_file_read_full(fd, &disk_info, len, &len)
                                    == APR_SUCCESS) {
                                len = disk_info.name_len;
                                url = apr_palloc(p, len + 1);
                                url[len] = 0;
                                if (apr_file_read_full(fd, url, len, &len)
                                        == APR_SUCCESS) {
                                    if (listextended) {
                                        apr_finfo_t hinfo, dinfo;
                                        if (APR_SUCCESS != apr_file_info_get(
                                                &hinfo, APR_FINFO_SIZE, fd)) {
                                        }
                                        else if (disk_info.has_body && APR_SUCCESS
                                                != apr_stat(
                                                        &dinfo,
                                                        apr_pstrcat(
                                                                p,
                                                                path,
                                                                "/",
                                                                apr_pstrndup(
                                                                        p,
                                                                        info.name,
                                                                        ext
                                                                                - info.name),
                                                                CACHE_DATA_SUFFIX,
                                                                NULL),
                                                        APR_FINFO_SIZE
                                                                | APR_FINFO_IDENT,
                                                        p)) {
                                        }
                                        else if (disk_info.has_body && (dinfo.device
                                                != disk_info.device
                                                || dinfo.inode
                                                        != disk_info.inode)) {
                                        }
                                        else {
                                            apr_file_printf(
                                                    outfile,
                                                    "%s %" APR_SIZE_T_FMT
                                                    " %" APR_SIZE_T_FMT
                                                    " %d %" APR_SIZE_T_FMT
                                                    " %" APR_TIME_T_FMT
                                                    " %" APR_TIME_T_FMT
                                                    " %" APR_TIME_T_FMT
                                                    " %" APR_TIME_T_FMT
                                                    " %d %d\n",
                                                    url,
                                                    round_up((apr_size_t)hinfo.size, round),
                                                    round_up(
                                                            disk_info.has_body ? (apr_size_t)dinfo.size
                                                                    : 0, round),
                                                    disk_info.status,
                                                    disk_info.entity_version,
                                                    disk_info.date,
                                                    disk_info.expire,
                                                    disk_info.request_time,
                                                    disk_info.response_time,
                                                    disk_info.has_body,
                                                    disk_info.header_only);
                                        }
                                    }
                                    else {
                                        apr_finfo_t dinfo;
                                        if (disk_info.has_body && APR_SUCCESS
                                                != apr_stat(
                                                        &dinfo,
                                                        apr_pstrcat(
                                                                p,
                                                                path,
                                                                "/",
                                                                apr_pstrndup(
                                                                        p,
                                                                        info.name,
                                                                        ext
                                                                                - info.name),
                                                                CACHE_DATA_SUFFIX,
                                                                NULL),
                                                        APR_FINFO_SIZE
                                                                | APR_FINFO_IDENT,
                                                        p)) {
                                        }
                                        else if (disk_info.has_body && (dinfo.device
                                                != disk_info.device
                                                || dinfo.inode
                                                        != disk_info.inode)) {
                                        }
                                        else {
                                            apr_file_printf(outfile, "%s\n",
                                                    url);
                                        }
                                    }
                                }
                                break;
                            }
                        }
                    }
                    apr_file_close(fd);
                }
            }
        }
    }
    apr_dir_close(dir);
    if (interrupted) {
        return 1;
    }
    apr_pool_destroy(p);
    if (benice) {
        apr_sleep(NICE_DELAY);
    }
    if (interrupted) {
        return 1;
    }
    return 0;
}
['static int list_urls(char *path, apr_pool_t *pool, apr_off_t round)\n{\n    apr_dir_t *dir;\n    apr_finfo_t info;\n    apr_size_t len;\n    apr_pool_t *p;\n    apr_file_t *fd;\n    const char *ext, *nextpath;\n    char *url;\n    apr_uint32_t format;\n    disk_cache_info_t disk_info;\n    apr_pool_create(&p, pool);\n    if (apr_dir_open(&dir, path, p) != APR_SUCCESS) {\n        return 1;\n    }\n    while (apr_dir_read(&info, 0, dir) == APR_SUCCESS && !interrupted) {\n        if (info.filetype == APR_DIR) {\n            if (!strcmp(info.name, ".") || !strcmp(info.name, "..")) {\n                continue;\n            }\n            if (list_urls(apr_pstrcat(p, path, "/", info.name, NULL), pool, round)) {\n                return 1;\n            }\n        }\n        else if (info.filetype == APR_REG) {\n            ext = strchr(info.name, \'.\');\n            if (ext && !strcasecmp(ext, CACHE_HEADER_SUFFIX)) {\n                nextpath = apr_pstrcat(p, path, "/", info.name, NULL);\n                if (apr_file_open(&fd, nextpath, APR_FOPEN_READ\n                        | APR_FOPEN_BINARY, APR_OS_DEFAULT, p) == APR_SUCCESS) {\n                    len = sizeof(format);\n                    if (apr_file_read_full(fd, &format, len, &len)\n                            == APR_SUCCESS) {\n                        if (format == DISK_FORMAT_VERSION) {\n                            apr_off_t offset = 0;\n                            apr_file_seek(fd, APR_SET, &offset);\n                            len = sizeof(disk_cache_info_t);\n                            if (apr_file_read_full(fd, &disk_info, len, &len)\n                                    == APR_SUCCESS) {\n                                len = disk_info.name_len;\n                                url = apr_palloc(p, len + 1);\n                                url[len] = 0;\n                                if (apr_file_read_full(fd, url, len, &len)\n                                        == APR_SUCCESS) {\n                                    if (listextended) {\n                                        apr_finfo_t hinfo, dinfo;\n                                        if (APR_SUCCESS != apr_file_info_get(\n                                                &hinfo, APR_FINFO_SIZE, fd)) {\n                                        }\n                                        else if (disk_info.has_body && APR_SUCCESS\n                                                != apr_stat(\n                                                        &dinfo,\n                                                        apr_pstrcat(\n                                                                p,\n                                                                path,\n                                                                "/",\n                                                                apr_pstrndup(\n                                                                        p,\n                                                                        info.name,\n                                                                        ext\n                                                                                - info.name),\n                                                                CACHE_DATA_SUFFIX,\n                                                                NULL),\n                                                        APR_FINFO_SIZE\n                                                                | APR_FINFO_IDENT,\n                                                        p)) {\n                                        }\n                                        else if (disk_info.has_body && (dinfo.device\n                                                != disk_info.device\n                                                || dinfo.inode\n                                                        != disk_info.inode)) {\n                                        }\n                                        else {\n                                            apr_file_printf(\n                                                    outfile,\n                                                    "%s %" APR_SIZE_T_FMT\n                                                    " %" APR_SIZE_T_FMT\n                                                    " %d %" APR_SIZE_T_FMT\n                                                    " %" APR_TIME_T_FMT\n                                                    " %" APR_TIME_T_FMT\n                                                    " %" APR_TIME_T_FMT\n                                                    " %" APR_TIME_T_FMT\n                                                    " %d %d\\n",\n                                                    url,\n                                                    round_up((apr_size_t)hinfo.size, round),\n                                                    round_up(\n                                                            disk_info.has_body ? (apr_size_t)dinfo.size\n                                                                    : 0, round),\n                                                    disk_info.status,\n                                                    disk_info.entity_version,\n                                                    disk_info.date,\n                                                    disk_info.expire,\n                                                    disk_info.request_time,\n                                                    disk_info.response_time,\n                                                    disk_info.has_body,\n                                                    disk_info.header_only);\n                                        }\n                                    }\n                                    else {\n                                        apr_finfo_t dinfo;\n                                        if (disk_info.has_body && APR_SUCCESS\n                                                != apr_stat(\n                                                        &dinfo,\n                                                        apr_pstrcat(\n                                                                p,\n                                                                path,\n                                                                "/",\n                                                                apr_pstrndup(\n                                                                        p,\n                                                                        info.name,\n                                                                        ext\n                                                                                - info.name),\n                                                                CACHE_DATA_SUFFIX,\n                                                                NULL),\n                                                        APR_FINFO_SIZE\n                                                                | APR_FINFO_IDENT,\n                                                        p)) {\n                                        }\n                                        else if (disk_info.has_body && (dinfo.device\n                                                != disk_info.device\n                                                || dinfo.inode\n                                                        != disk_info.inode)) {\n                                        }\n                                        else {\n                                            apr_file_printf(outfile, "%s\\n",\n                                                    url);\n                                        }\n                                    }\n                                }\n                                break;\n                            }\n                        }\n                    }\n                    apr_file_close(fd);\n                }\n            }\n        }\n    }\n    apr_dir_close(dir);\n    if (interrupted) {\n        return 1;\n    }\n    apr_pool_destroy(p);\n    if (benice) {\n        apr_sleep(NICE_DELAY);\n    }\n    if (interrupted) {\n        return 1;\n    }\n    return 0;\n}']