I'm compiling rsync 3.0.9pre1 using Microsoft Visual Studio 2010 on my windows
XP system. I get a compilation failure in flist.c, function send_directory:
flist.c(1653) : error C2143: syntax error : missing ';' before 'type'
flist.c(1654) : error C2065: 'name_len' : undeclared identifier
flist.c(1654) : warning C4018: '>=' : signed/unsigned mismatch
flist.c(1660) : error C2065: 'name_len' : undeclared identifier
I realize the construct at this line is valid C99 syntax, which isn't accepted
by MS.
Can the code be changed to declare this variable at the beginning of the block?
From:
for (errno = 0, di = readdir(d); di; errno = 0, di = readdir(d)) {
char *dname = d_name(di);
if (dname[0] == '.' && (dname[1] == '\0'
|| (dname[1] == '.' && dname[2] == '\0')))
continue;
unsigned name_len = strlcpy(p, dname, remainder);
To:
for (errno = 0, di = readdir(d); di; errno = 0, di = readdir(d)) {
char *dname = d_name(di);
unsigned name_len;
if (dname[0] == '.' && (dname[1] == '\0'
|| (dname[1] == '.' && dname[2] == '\0')))
continue;
name_len = strlcpy(p, dname, remainder);
--
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html