diff --git a/NEWS b/NEWS index a72c9c6..072344e 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,11 @@ +exfatprogs 1.2.4 - released 2024-06-17 +====================================== + +BUG FIXES : + * tune.exfat: Fix "invalid serial number" error when + setting an serial number. + * fsck.exfat: Fix memory leak in an error path + exfatprogs 1.2.3 - released 2024-05-23 ====================================== diff --git a/include/version.h b/include/version.h index bef66aaf..31f150e 100644 --- a/include/version.h +++ b/include/version.h @@ -5,6 +5,6 @@ #ifndef _VERSION_H -#define EXFAT_PROGS_VERSION "1.2.3" +#define EXFAT_PROGS_VERSION "1.2.4" #endif /* !_VERSION_H */ diff --git a/lib/exfat_fs.c b/lib/exfat_fs.c index be76e59..b24f532 100644 --- a/lib/exfat_fs.c +++ b/lib/exfat_fs.c @@ -128,8 +128,10 @@ struct exfat *exfat_alloc_exfat(struct exfat_blk_dev *blk_dev, struct pbr *bs) struct exfat *exfat; exfat = calloc(1, sizeof(*exfat)); - if (!exfat) + if (!exfat) { + free(bs); return NULL; + } INIT_LIST_HEAD(&exfat->dir_list); exfat->blk_dev = blk_dev; diff --git a/lib/libexfat.c b/lib/libexfat.c index 0bcb4a4..9cc184f 100644 --- a/lib/libexfat.c +++ b/lib/libexfat.c @@ -1046,6 +1046,8 @@ int exfat_parse_ulong(const char *s, unsigned long *out) { char *endptr; + errno = 0; + *out = strtoul(s, &endptr, 0); if (errno)