diff -Naurp mirrordir-0.10.49/vfs/ftpfs.c mirrordir-0.10.49.new/vfs/ftpfs.c --- mirrordir-0.10.49/vfs/ftpfs.c 2019-11-28 10:15:34.267687949 +0100 +++ mirrordir-0.10.49.new/vfs/ftpfs.c 2019-11-28 10:14:39.365734454 +0100 @@ -2370,8 +2370,8 @@ static void *ftpfs_readdir (void *data) strncpy (dirp->extra_buffer, fe->name, sizeof (dirp->extra_buffer) - 1); dirp->extra_buffer[sizeof (dirp->extra_buffer) - 1] = '\0'; #else - strncpy (&(dirp->dent.d_name [0]), fe->name, sizeof (dirp->dent.d_name) + sizeof (dirp->extra_buffer) - 1); - dirp->dent.d_name[sizeof (dirp->dent.d_name) + sizeof (dirp->extra_buffer) - 1] = '\0'; + strncpy (&(dirp->dent.d_name [0]), fe->name, sizeof (dirp->dent.d_name) - 1); + dirp->dent.d_name[sizeof (dirp->dent.d_name) - 1] = '\0'; #endif #ifdef HAVE_DIR_D_NAMELEN dirp->dent.d_namlen = strlen (dirp->dent.d_name); diff -Naurp mirrordir-0.10.49/vfs/mcfs.c mirrordir-0.10.49.new/vfs/mcfs.c --- mirrordir-0.10.49/vfs/mcfs.c 1999-12-16 14:19:53.000000000 +0100 +++ mirrordir-0.10.49.new/vfs/mcfs.c 2019-11-28 10:15:15.190356649 +0100 @@ -1255,8 +1255,8 @@ static void *mcfs_readdir (void *info) strncpy (mcfs_readdir_data.extra_buffer, mcfs_info->current->text, sizeof (mcfs_readdir_data.extra_buffer) - 1); mcfs_readdir_data.extra_buffer[sizeof (mcfs_readdir_data.extra_buffer) - 1] = '\0'; #else - strncpy (&(mcfs_readdir_data.dent.d_name [0]), mcfs_info->current->text, sizeof (mcfs_readdir_data.dent.d_name) + sizeof (mcfs_readdir_data.extra_buffer) - 1); - mcfs_readdir_data.dent.d_name [sizeof (mcfs_readdir_data.dent.d_name) + sizeof (mcfs_readdir_data.extra_buffer) - 1] = '\0'; + strncpy (&(mcfs_readdir_data.dent.d_name [0]), mcfs_info->current->text, sizeof (mcfs_readdir_data.dent.d_name) - 1); + mcfs_readdir_data.dent.d_name [sizeof (mcfs_readdir_data.dent.d_name) - 1] = '\0'; #endif cached_lstat_info = &mcfs_info->current->my_stat; mcfs_info->current = mcfs_info->current->next;