parted/0017-libparted-Fix-warnings-from-GCC-8-Wunused-variable-a.patch
DistroBaker b7125dc640 Merged update from upstream sources
This is an automated DistroBaker update from upstream sources.
If you do not know what this is about or would like to opt out,
contact the OSCI team.

Source: https://src.fedoraproject.org/rpms/parted.git#633c371306f0da38c70879e948b612775032740a
2020-12-01 18:08:09 +00:00

68 lines
2.6 KiB
Diff

From d51921b05c32287238b1b0447d7e952884f63eb5 Mon Sep 17 00:00:00 2001
From: Shin'ichiro Kawasaki <kawasaki@juno.dti.ne.jp>
Date: Wed, 14 Aug 2019 10:59:19 +0900
Subject: [PATCH 17/42] libparted: Fix warnings from GCC 8 -Wunused-variable
and -Warray-bounds
GCC 8 reports two warnings as follows.
r/fat/bootsector.c: In function 'fat_boot_sector_set_boot_code':
r/fat/bootsector.c:274:15: warning: unused variable 'fs_info' [-Wunused-variable]
FatSpecific* fs_info = FAT_SPECIFIC (fs);
^~~~~~~
In function 'memcpy',
inlined from 'fat_boot_sector_set_boot_code' at r/fat/bootsector.c:283:2:
/usr/include/bits/string_fortified.h:34:10: warning: '__builtin_memcpy' forming offset [126, 128] is out of the bounds [0, 125] [-Warray-bounds]
return __builtin___memcpy_chk (__dest, __src, __len, __bos0 (__dest));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To avoid the warnings, remove the unused variable. Use strcpy in place of
memcpy checking copy length.
Signed-off-by: Shin'ichiro Kawasaki <kawasaki@juno.dti.ne.jp>
Signed-off-by: Brian C. Lane <bcl@redhat.com>
---
libparted/fs/r/fat/bootsector.c | 5 ++---
libparted/fs/r/fat/bootsector.h | 2 --
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/libparted/fs/r/fat/bootsector.c b/libparted/fs/r/fat/bootsector.c
index 46d5926..9130900 100644
--- a/libparted/fs/r/fat/bootsector.c
+++ b/libparted/fs/r/fat/bootsector.c
@@ -271,8 +271,6 @@ fat_boot_sector_analyse (FatBootSector* bs, PedFileSystem* fs)
int
fat_boot_sector_set_boot_code (FatBootSector** bsp, const PedFileSystem* fs)
{
- FatSpecific* fs_info = FAT_SPECIFIC (fs);
-
PED_ASSERT (bsp != NULL);
*bsp = ped_malloc (fs->geom->dev->sector_size);
FatBootSector *bs = *bsp;
@@ -280,7 +278,8 @@ fat_boot_sector_set_boot_code (FatBootSector** bsp, const PedFileSystem* fs)
memset (bs, 0, 512);
memcpy (bs->boot_jump, FAT_BOOT_JUMP, 3);
- memcpy (bs->u.fat32.boot_code, FAT_BOOT_CODE, FAT_BOOT_CODE_LENGTH);
+ PED_ASSERT (sizeof(FAT_BOOT_CODE) < sizeof(bs->u.fat32.boot_code));
+ strcpy (bs->u.fat32.boot_code, FAT_BOOT_CODE);
return 1;
}
diff --git a/libparted/fs/r/fat/bootsector.h b/libparted/fs/r/fat/bootsector.h
index 6b0363f..42fc3f2 100644
--- a/libparted/fs/r/fat/bootsector.h
+++ b/libparted/fs/r/fat/bootsector.h
@@ -57,8 +57,6 @@ typedef struct _FatInfoSector FatInfoSector;
/* message: */ \
FAT_BOOT_MESSAGE
-#define FAT_BOOT_CODE_LENGTH 128
-
struct __attribute__ ((packed)) _FatBootSector {
uint8_t boot_jump[3]; /* 00: Boot strap short or near jump */
uint8_t system_id[8]; /* 03: system name */
--
2.26.2