c
char temp_src[PATH_MAX];
char temp_dest[PATH_MAX];

if (snprintf(temp_src, sizeof(temp_src), "%s%s", src->buf, iter->relative_path) < sizeof(temp_src)) {
    strbuf_reset(src);
    strbuf_addstr(src, temp_src);
} else {
    die("Source path too long");
}

if (snprintf(temp_dest, sizeof(temp_dest), "%s%s", dest->buf, iter->relative_path) < sizeof(temp_dest)) {
    strbuf_reset(dest);
    strbuf_addstr(dest, temp_dest);
} else {
    die("Destination path too long");
}
