/* 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
/* 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
#endif
int read_ndx_and_attrs(int f_in, int *iflag_ptr, uchar *type_ptr,
#endif
int read_ndx_and_attrs(int f_in, int *iflag_ptr, uchar *type_ptr,
- 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,
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
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