From 2b6610010882ac106998ec6ceb6df9847165e81d Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Sun, 6 Dec 2020 12:30:42 +0100 Subject: [PATCH] backupfile: Use idx_t for nonnegative ptrdiff_t variables. * lib/backupfile.c: Include idx.h. (numbered_backup): Mark base_offset as nonnegative. (backupfile_internal): Likewise. * modules/backup-rename (Depends-on): Add idx. * modules/backupfile (Depends-on): Likewise. --- ChangeLog | 9 +++++++++ lib/backupfile.c | 17 +++++++++-------- modules/backup-rename | 1 + modules/backupfile | 1 + 4 files changed, 20 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5378f177a3..e0495a0c47 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2020-12-06 Bruno Haible + + backupfile: Use idx_t for nonnegative ptrdiff_t variables. + * lib/backupfile.c: Include idx.h. + (numbered_backup): Mark base_offset as nonnegative. + (backupfile_internal): Likewise. + * modules/backup-rename (Depends-on): Add idx. + * modules/backupfile (Depends-on): Likewise. + 2020-12-05 Paul Eggert doc: fix curved quotes issue diff --git a/lib/backupfile.c b/lib/backupfile.c index 2a88248d7f..dfc29e8486 100644 --- a/lib/backupfile.c +++ b/lib/backupfile.c @@ -22,12 +22,6 @@ #include "backup-internal.h" -#include "attribute.h" -#include "basename-lgpl.h" -#include "opendirat.h" -#include "renameatu.h" -#include "xalloc-oversized.h" - #include #include #include @@ -36,6 +30,13 @@ #include #include +#include "attribute.h" +#include "basename-lgpl.h" +#include "idx.h" +#include "opendirat.h" +#include "renameatu.h" +#include "xalloc-oversized.h" + #ifndef _D_EXACT_NAMLEN # define _D_EXACT_NAMLEN(dp) strlen ((dp)->d_name) #endif @@ -198,7 +199,7 @@ enum numbered_backup_result static enum numbered_backup_result numbered_backup (int dir_fd, char **buffer, size_t buffer_size, size_t filelen, - ptrdiff_t base_offset, DIR **dirpp, int *pnew_fd) + idx_t base_offset, DIR **dirpp, int *pnew_fd) { enum numbered_backup_result result = BACKUP_IS_NEW; DIR *dirp = *dirpp; @@ -307,7 +308,7 @@ char * backupfile_internal (int dir_fd, char const *file, enum backup_type backup_type, bool rename) { - ptrdiff_t base_offset = last_component (file) - file; + idx_t base_offset = last_component (file) - file; size_t filelen = base_offset + strlen (file + base_offset); if (! simple_backup_suffix) diff --git a/modules/backup-rename b/modules/backup-rename index cdc96e6f03..d4bd339d77 100644 --- a/modules/backup-rename +++ b/modules/backup-rename @@ -17,6 +17,7 @@ closedir d-ino dirent-safer fcntl +idx memcmp opendirat readdir diff --git a/modules/backupfile b/modules/backupfile index 2ca1e540e2..fd15ec5044 100644 --- a/modules/backupfile +++ b/modules/backupfile @@ -17,6 +17,7 @@ closedir d-ino dirent-safer fcntl +idx memcmp opendirat readdir -- 2.39.5