X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/2ac9793064573cee6d8530906124e61ef0092378..8c702798f69802d65b34a8eb392e9a96bb5c021b:/rsync.c diff --git a/rsync.c b/rsync.c index a9ba4f29..7f8d65cb 100644 --- a/rsync.c +++ b/rsync.c @@ -20,6 +20,7 @@ */ #include "rsync.h" +#include "ifuncs.h" #if defined HAVE_LIBCHARSET_H && defined HAVE_LOCALE_CHARSET #include #elif defined HAVE_LANGINFO_H && defined HAVE_NL_LANGINFO @@ -70,7 +71,7 @@ static const char *default_charset(void) # endif } -void setup_iconv() +void setup_iconv(void) { const char *defset = default_charset(); # ifdef ICONV_OPTION @@ -133,8 +134,6 @@ void setup_iconv() # endif } -# ifdef ICONV_OPTION - /* This function converts the characters in the "in" xbuf into characters * in the "out" xbuf. The "len" of the "in" xbuf is used starting from its * "pos". The "size" of the "out" xbuf restricts how many characters can be @@ -204,7 +203,6 @@ int iconvbufs(iconv_t ic, xbuf *in, xbuf *out, int flags) return errno ? -1 : 0; } -# endif #endif int read_ndx_and_attrs(int f_in, int *iflag_ptr, uchar *type_ptr, @@ -267,7 +265,8 @@ int read_ndx_and_attrs(int f_in, int *iflag_ptr, uchar *type_ptr, invalid_ndx: rprintf(FERROR, "Invalid file index: %d (%d - %d) with iflags %x [%s]\n", - ndx, first_flist->ndx_start - 1, first_flist->prev->ndx_end, + ndx, first_flist ? first_flist->ndx_start - 1 : -1, + first_flist ? first_flist->prev->ndx_end : -1, iflags, who_am_i()); exit_cleanup(RERR_PROTOCOL); } @@ -336,11 +335,11 @@ mode_t dest_mode(mode_t flist_mode, mode_t stat_mode, int dflt_perms, return new_mode; } -int set_file_attrs(const char *fname, struct file_struct *file, statx *sxp, +int set_file_attrs(const char *fname, struct file_struct *file, stat_x *sxp, const char *fnamecmp, int flags) { int updated = 0; - statx sx2; + stat_x sx2; int change_uid, change_gid; mode_t new_mode = file->mode; int inherit; @@ -400,9 +399,9 @@ int set_file_attrs(const char *fname, struct file_struct *file, statx *sxp, change_gid = gid_ndx && !(file->flags & FLAG_SKIP_GROUP) && sxp->st.st_gid != (gid_t)F_GROUP(file); #if !defined HAVE_LCHOWN && !defined CHOWN_MODIFIES_SYMLINK - if (S_ISLNK(sxp->st.st_mode)) + if (S_ISLNK(sxp->st.st_mode)) { ; - else + } else #endif if (change_uid || change_gid) { if (verbose > 2) {