From 1390d3515fea021083f3d372df702a3b43026ab3 Mon Sep 17 00:00:00 2001 From: Floris Bos Date: Fri, 22 Sep 2023 20:32:46 +0200 Subject: [PATCH] Workaround errornous gcc string overflow warning --- src/devicewrapperfatpartition.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/devicewrapperfatpartition.cpp b/src/devicewrapperfatpartition.cpp index e2d3da5..5696927 100644 --- a/src/devicewrapperfatpartition.cpp +++ b/src/devicewrapperfatpartition.cpp @@ -372,15 +372,12 @@ bool DeviceWrapperFatPartition::getDirEntry(const QString &longFilename, struct { struct longfn_entry *l = (struct longfn_entry *) entry; /* A part can have 13 UTF-16 characters */ - QString lnamePart(13, QChar::Null); - char *lnamePartStr = (char *) lnamePart.data(); + char lnamePartStr[26] = {0}; /* Using memcpy() because it has no problems accessing unaligned struct members */ memcpy(lnamePartStr, l->LDIR_Name1, 10); memcpy(lnamePartStr+10, l->LDIR_Name2, 12); -#pragma GCC diagnostics push -#pragma GCC diagnostic ignored "-Wstringop-overflow=" memcpy(lnamePartStr+22, l->LDIR_Name3, 4); -#pragma GCC diagnostics pop + QString lnamePart( (QChar *) lnamePartStr, 13); filenameRead = lnamePart + filenameRead; } else