Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gptfdisk for openSUSE:Factory checked in at 2021-06-14 23:10:28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gptfdisk (Old) and /work/SRC/openSUSE:Factory/.gptfdisk.new.32437 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gptfdisk" Mon Jun 14 23:10:28 2021 rev:22 rq:899033 version:1.0.8 Changes: -------- --- /work/SRC/openSUSE:Factory/gptfdisk/gptfdisk.changes 2021-03-10 08:49:51.218430588 +0100 +++ /work/SRC/openSUSE:Factory/.gptfdisk.new.32437/gptfdisk.changes 2021-06-14 23:10:30.348687661 +0200 @@ -1,0 +2,33 @@ +Thu Jun 10 08:23:55 UTC 2021 - Paolo Stivanin <[email protected]> + +- Update to 1.0.8 + * Fixed double byte swap operation on writes of partition name data on + big-endian systems; this is in addition to the double byte swap fix on + reading partition label data fixed in 1.0.7. (Thanks to Erik Larsson for + both fixes.) + * Added feature to gdisk and sgdisk to enable swapping the byte order of + partition names, so as to correct disks already affected by the preceding + bug. This option is 'b' on the experts' menu in gdisk and + -b/--byte-swap-name in sgdisk. This seems advanced/obscure enough that I + don't want to clutter cgdisk's menu with this option, so I haven't added + it there. + * Added type code for the Barebox boot loader (0xbb00; + 4778ED65-BF42-45FA-9C5B-287A1DC4AAB1). + * Fixed bug that caused spurious warnings about the partition table + header claiming an invalid size of partition entries when reading + some MBR disks. + * Added ARM64 as an architecture for the Mac builds of gdisk and fixparts. + The official GPT fdisk binaries of these files for macOS are now + "universal" x86-64/ARM64 binaries, so they will run natively on the new M1 + (ARM64) Macs. The sgdisk and cgdisk binaries, though, remain built only + for x86-64, because they rely on libraries that are not easily built in + "universal" form. + * Fixed double byte swap operation on partition label data on big-endian + CPUs. This resulted in partition names becoming gibberish on such CPUs. + * Added three new type codes: + - 0x0701 - Microsoft Storage Replica + - 0x0702 - ArcaOS Type 1 + - 0x8401 - Storage Performance Development Kit (SPDK) block device +- Drop fix-spurious-warnings.patch + +------------------------------------------------------------------- Old: ---- fix-spurious-warnings.patch gptfdisk-1.0.6.tar.gz New: ---- gptfdisk-1.0.8.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gptfdisk.spec ++++++ --- /var/tmp/diff_new_pack.fh0qcO/_old 2021-06-14 23:10:30.844688557 +0200 +++ /var/tmp/diff_new_pack.fh0qcO/_new 2021-06-14 23:10:30.844688557 +0200 @@ -17,7 +17,7 @@ Name: gptfdisk -Version: 1.0.6 +Version: 1.0.8 Release: 0 Summary: GPT partitioning and MBR repair software License: GPL-2.0-only @@ -25,7 +25,6 @@ URL: http://rodsbooks.com/gdisk Source: https://downloads.sf.net/%name/%name-%version.tar.gz -Patch0: fix-spurious-warnings.patch BuildRequires: gcc-c++ BuildRequires: ncurses-devel BuildRequires: pkgconfig(popt) ++++++ gptfdisk-1.0.6.tar.gz -> gptfdisk-1.0.8.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/Makefile.mac new/gptfdisk-1.0.8/Makefile.mac --- old/gptfdisk-1.0.6/Makefile.mac 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/Makefile.mac 2021-06-10 01:27:51.000000000 +0200 @@ -1,7 +1,7 @@ CC=gcc CXX=c++ # FATBINFLAGS=-arch x86_64 -arch i386 -mmacosx-version-min=10.9 -FATBINFLAGS=-arch x86_64 -mmacosx-version-min=10.9 +FATBINFLAGS=-arch x86_64 -arch arm64 -mmacosx-version-min=10.9 THINBINFLAGS=-arch x86_64 -mmacosx-version-min=10.9 CFLAGS=$(FATBINFLAGS) -O2 -D_FILE_OFFSET_BITS=64 -g #CXXFLAGS=-O2 -Wall -D_FILE_OFFSET_BITS=64 -D USE_UTF16 -I/opt/local/include -I/usr/local/include -I/opt/local/include -g @@ -21,7 +21,8 @@ # $(CXX) $(LIB_OBJS) -L/usr/lib -licucore gpttext.o gdisk.o -o gdisk cgdisk: $(LIB_OBJS) cgdisk.o gptcurses.o - $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o /usr/lib/libncurses.dylib $(LDFLAGS) $(FATBINFLAGS) -o cgdisk + $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o /usr/local/Cellar/ncurses/6.2/lib/libncurses.dylib $(LDFLAGS) -o cgdisk +# $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o /usr/lib/libncurses.dylib $(LDFLAGS) -o cgdisk # $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o $(LDFLAGS) -licucore -lncurses -o cgdisk sgdisk: $(LIB_OBJS) gptcl.o sgdisk.o diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/NEWS new/gptfdisk-1.0.8/NEWS --- old/gptfdisk-1.0.6/NEWS 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/NEWS 2021-06-10 01:27:51.000000000 +0200 @@ -1,3 +1,45 @@ +1.0.8 (6/9/2021): +----------------- + +- Fixed double byte swap operation on writes of partition name data on + big-endian systems; this is in addition to the double byte swap fix on + reading partition label data fixed in 1.0.7. (Thanks to Erik Larsson for + both fixes.) + +- Added feature to gdisk and sgdisk to enable swapping the byte order of + partition names, so as to correct disks already affected by the preceding + bug. This option is 'b' on the experts' menu in gdisk and + -b/--byte-swap-name in sgdisk. This seems advanced/obscure enough that I + don't want to clutter cgdisk's menu with this option, so I haven't added + it there. + +- Added type code for the Barebox boot loader (0xbb00; + 4778ED65-BF42-45FA-9C5B-287A1DC4AAB1). + +- Trivial code cleanup. + +1.0.7 (3/10/2021): +------------------ + +- Fixed bug that caused spurious warnings about the partition table + header claiming an invalid size of partition entries when reading + some MBR disks. + +- Added ARM64 as an architecture for the Mac builds of gdisk and fixparts. + The official GPT fdisk binaries of these files for macOS are now + "universal" x86-64/ARM64 binaries, so they will run natively on the new M1 + (ARM64) Macs. The sgdisk and cgdisk binaries, though, remain built only + for x86-64, because they rely on libraries that are not easily built in + "universal" form. + +- Fixed double byte swap operation on partition label data on big-endian + CPUs. This resulted in partition names becoming gibberish on such CPUs. + +- Added three new type codes: + - 0x0701 - Microsoft Storage Replica + - 0x0702 - ArcaOS Type 1 + - 0x8401 - Storage Performance Development Kit (SPDK) block device + 1.0.6 (1/13/2021): ------------------ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/README new/gptfdisk-1.0.8/README --- old/gptfdisk-1.0.6/README 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/README 2021-06-10 01:27:51.000000000 +0200 @@ -168,8 +168,8 @@ beyond checking a few basics. Under Windows, Microsoft Visual C++ 2008 can be used instead. In addition, note these requirements: -* On Linux, FreeBSD, OS X, and Solaris, libuuid must be installed. This is - the standard for Linux and OS X, although you may need to install a +* On Linux, FreeBSD, macOS, and Solaris, libuuid must be installed. This is + the standard for Linux and macOS, although you may need to install a package called uuid-dev or something similar to get the headers. On FreeBSD, the e2fsprogs-libuuid port must be installed. @@ -177,11 +177,11 @@ Unicode partition names, is optional on all platforms except Windows, on which it's not supported. Using this library was required to get proper UTF-16 partition name support in GPT fdisk versions prior to 0.8.9, but - as of that version it should not longer be required. Nonetheless, you can + as of that version it should no longer be required. Nonetheless, you can use it if you're having problems with the new UTF-16 support. This - library is normally installed in Linux and OS X, but you may need to + library is normally installed in Linux and macOS, but you may need to install the development headers (libicu-dev or something similar in - Linux; or the libicu36-dev Fink package in OS X). To compile with ICU + Linux; or the libicu36-dev Fink package in macOS). To compile with ICU support, you must modify the Makefile: Look for commented-out lines that refer to USE_UTF16, -licuuc, -licudata, or -licucore. Uncomment them and comment out the equivalents that lack these lines. @@ -189,17 +189,17 @@ * The cgdisk program requires the ncurses library and its development files (headers). Most Linux distributions install ncurses by default, but you may need to install a package called libncurses5-dev, ncurses-devel, or - something similar to obtain the header files. These files were installed - already on my Mac OS X development system; however, they may have been - installed as dependencies of other programs I've installed. If you're - having problems installing ncurses, you can compile gdisk and/or sgdisk - without cgdisk by specifying only the targets you want to compile to - make. + something similar to obtain the header files. On my macOS development + system, I installed the nurses Homebrew ("brew") package; however, other + Unix-style software repositories are available and may work for you (see + the next item). If you're having problems installing ncurses, you can + compile gdisk and/or sgdisk without cgdisk by specifying only the targets + you want to compile to make. * The sgdisk program requires the popt library and its development files (headers). Most Linux distributions install popt by default, but you may need to install a package called popt-dev, popt-devel, or something - similar to obtain the header files. Mac OS users can find a version of + similar to obtain the header files. MacOS users can find a version of popt for Mac OS from Darwin Ports (http://popt.darwinports.com), MacPorts (https://trac.macports.org/browser/trunk/dports/devel/popt/Portfile), Fink (http://www.finkproject.org), or brew (http://macappstore.org/popt/); @@ -214,35 +214,35 @@ When all the necessary development tools and libraries are installed, you can uncompress the package and type "make" at the command prompt in the -resulting directory. (You may need to type "make -f Makefile.mac" on Mac OS -X, "make -f Makefile.freebsd" on FreeBSD, "make -f Makefile.solaris" on -Solaris, or "make -f Makefile.mingw" to compile using MinGW for Windows.) -You may also need to add header (include) directories or library -directories by setting the CXXFLAGS environment variable or by editing the -Makefile. The result should be program files called gdisk, cgdisk, sgdisk, -and fixparts. Typing "make gdisk", "make cgdisk", "make sgdisk", or "make -fixparts" will compile only the requested programs. You can use these -programs in place or copy the files to a suitable directory, such as -/usr/local/sbin. You can copy the man pages (gdisk.8, cgdisk.8, sgdisk.8, -and fixparts.8) to /usr/local/man/man8 to make them available. +resulting directory. (You must type "make -f Makefile.mac" on macOS, "make +-f Makefile.freebsd" on FreeBSD, "make -f Makefile.solaris" on Solaris, or +"make -f Makefile.mingw" to compile using MinGW for Windows.) You may also +need to add header (include) directories or library directories by setting +the CXXFLAGS environment variable or by editing the Makefile. The result +should be program files called gdisk, cgdisk, sgdisk, and fixparts. Typing +"make gdisk", "make cgdisk", "make sgdisk", or "make fixparts" will compile +only the requested programs. You can use these programs in place or copy the +files to a suitable directory, such as /usr/local/sbin. You can copy the man +pages (gdisk.8, cgdisk.8, sgdisk.8, and fixparts.8) to /usr/local/man/man8 +to make them available. Caveats ------- -THIS SOFTWARE IS BETA SOFTWARE! IF IT WIPES OUT YOUR HARD DISK OR EATS YOUR -CAT, DON'T BLAME ME! To date, I've tested the software on several USB flash -drives, physical hard disks, and virtual disks in the QEMU and VirtualBox -environments. Many others have now used the software on their computers, as -well. I believe all data-corruption bugs to be squashed, but I know full well -that the odds of my missing something are high. This is particularly true for -large (over-2TiB) drives; my only direct testing with such disks is with -virtual QEMU and VirtualBox disks. I've received user reports of success with -RAID arrays over 2TiB in size, though. +DISK PARTITIONING SOFTWARE IS DANGEROUS! Although the GPT fdisk project has +existed since 2009, I do not claim it is entirely bug-free; in fact a glance +at the revision history shows recent bug fixes. I believe all +data-corruption bugs to be squashed, but I know full well that the odds of +my missing something are high. This is particularly true for large +(over-2TiB) drives and use in exotic environments. My main development platform is a system running the 64-bit version of Ubuntu Linux. I've also tested on several other 32- and 64-bit Linux -distributions, Intel-based Mac OS X 10.6 and several later versions, 64-bit -FreeBSD 7.1, and Windows 7 and 10. +distributions, Intel-based macOS 10 and 11, 64-bit FreeBSD 7.1, and Windows +7 and 10. Other environments qualify as "exotic," and even macOS and Windows +are borderline exotic in this context, since I use Linux almost exclusively, +and my impression is that GPT fdisk is far more commonly used on Linux than +in other OSes. Redistribution -------------- @@ -270,7 +270,7 @@ - Justin Maggard ([email protected]) -- Dwight Schauer ([email protected]) +- Dwight Schauer ([email protected]) - Florian Zumbiehl ([email protected]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/basicmbr.cc new/gptfdisk-1.0.8/basicmbr.cc --- old/gptfdisk-1.0.6/basicmbr.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/basicmbr.cc 2021-06-10 01:27:51.000000000 +0200 @@ -140,7 +140,7 @@ // Read data from MBR. Returns 1 if read was successful (even if the // data isn't a valid MBR), 0 if the read failed. int BasicMBRData::ReadMBRData(const string & deviceFilename) { - int allOK = 1; + int allOK; if (myDisk == NULL) { myDisk = new DiskIO; @@ -355,7 +355,7 @@ // MBR itself and any defined logical partitions, provided there's an // MBR extended partition. int BasicMBRData::WriteMBRData(void) { - int allOK = 1; + int allOK; if (myDisk != NULL) { if (myDisk->OpenForWrite() != 0) { @@ -372,7 +372,7 @@ // Save the MBR data to a file. This writes both the // MBR itself and any defined logical partitions. int BasicMBRData::WriteMBRData(DiskIO *theDisk) { - int i, j, partNum, next, allOK = 1, moreLogicals = 0; + int i, j, partNum, next, allOK, moreLogicals = 0; uint64_t extFirstLBA = 0; uint64_t writeEbrTo; // 64-bit because we support extended in 2-4TiB range TempMBR tempMBR; @@ -948,7 +948,7 @@ // primary status. Also does NOT consider partition order; there // can be gaps and it will still be considered legal. int BasicMBRData::IsLegal(void) { - int allOK = 1; + int allOK; allOK = (FindOverlaps() == 0); allOK = (allOK && (NumPrimaries() <= 4)); @@ -1055,7 +1055,7 @@ // Set the partition's type code. // Returns 1 if successful, 0 if not (invalid partition number) int BasicMBRData::SetPartType(int num, int type) { - int allOK = 1; + int allOK; if ((num >= 0) && (num < MAX_MBR_PARTS)) { if (partitions[num].GetLengthLBA() != UINT32_C(0)) { @@ -1308,7 +1308,7 @@ // entries (primary space). // Returns the number of partitions moved. int BasicMBRData::RemoveLogicalsFromFirstFour(void) { - int i, j = 4, numMoved = 0, swapped = 0; + int i, j, numMoved = 0, swapped = 0; MBRPart temp; for (i = 0; i < 4; i++) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/bsd.cc new/gptfdisk-1.0.8/bsd.cc --- old/gptfdisk-1.0.6/bsd.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/bsd.cc 2021-06-10 01:27:51.000000000 +0200 @@ -44,7 +44,7 @@ // just opens the device file and then calls an overloaded function to do // the bulk of the work. Returns 1 on success, 0 on failure. int BSDData::ReadBSDData(const string & device, uint64_t startSector, uint64_t endSector) { - int allOK = 1; + int allOK; DiskIO myDisk; if (device != "") { @@ -64,7 +64,7 @@ // Load the BSD disklabel data from an already-opened disk // file, starting with the specified sector number. int BSDData::ReadBSDData(DiskIO *theDisk, uint64_t startSector, uint64_t endSector) { - int allOK = 1; + int allOK; int i, foundSig = 0, bigEnd = 0; int relative = 0; // assume absolute partition sector numbering uint8_t buffer[4096]; // I/O buffer diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/cgdisk.8 new/gptfdisk-1.0.8/cgdisk.8 --- old/gptfdisk-1.0.6/cgdisk.8 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/cgdisk.8 2021-06-10 01:27:51.000000000 +0200 @@ -1,6 +1,6 @@ .\" Copyright 2011-2021 Roderick W. Smith ([email protected]) .\" May be distributed under the GNU General Public License -.TH "CGDISK" "8" "1.0.6" "Roderick W. Smith" "GPT fdisk Manual" +.TH "CGDISK" "8" "1.0.8" "Roderick W. Smith" "GPT fdisk Manual" .SH "NAME" cgdisk \- Curses-based GUID partition table (GPT) manipulator .SH "SYNOPSIS" @@ -369,7 +369,7 @@ * Justin Maggard ([email protected]) -* Dwight Schauer ([email protected]) +* Dwight Schauer ([email protected]) * Florian Zumbiehl ([email protected]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/cgdisk.html new/gptfdisk-1.0.8/cgdisk.html --- old/gptfdisk-1.0.6/cgdisk.html 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/cgdisk.html 2021-06-10 01:27:51.000000000 +0200 @@ -4,7 +4,7 @@ <HTML><HEAD><TITLE>Man page of CGDISK</TITLE> </HEAD><BODY> <H1>CGDISK</H1> -Section: GPT fdisk Manual (8)<BR>Updated: 1.0.6<BR><A HREF="#index">Index</A> +Section: GPT fdisk Manual (8)<BR>Updated: 1.0.8<BR><A HREF="#index">Index</A> <A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR> <A NAME="lbAB"> </A> @@ -437,7 +437,7 @@ <P> * Justin Maggard (<A HREF="mailto:[email protected]">[email protected]</A>) <P> -* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) +* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) <P> * Florian Zumbiehl (<A HREF="mailto:[email protected]">[email protected]</A>) <P> @@ -491,6 +491,6 @@ This document was created by <A HREF="/cgi-bin/man/man2html">man2html</A>, using the manual pages.<BR> -Time: 22:14:27 GMT, January 13, 2021 +Time: 23:27:51 GMT, June 09, 2021 </BODY> </HTML> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/current.spec new/gptfdisk-1.0.8/current.spec --- old/gptfdisk-1.0.6/current.spec 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/current.spec 2021-06-10 01:27:51.000000000 +0200 @@ -1,12 +1,12 @@ Summary: GPT partitioning and MBR repair software Name: gptfdisk -Version: 1.0.6 +Version: 1.0.8 Release: 1%{?dist} License: GPLv2 URL: http://www.rodsbooks.com/gdisk Group: Applications/System -Source: http://www.rodsbooks.com/gdisk/gptfdisk-1.0.6.tar.gz +Source: http://www.rodsbooks.com/gdisk/gptfdisk-1.0.8.tar.gz BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) %description @@ -81,5 +81,5 @@ %changelog -* Wed Jan 13 2021 R Smith <[email protected]> - 1.0.6 -- Created spec file for 1.0.6 release +* Wed Jun 9 2021 R Smith <[email protected]> - 1.0.8 +- Created spec file for 1.0.8 release diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/diskio-unix.cc new/gptfdisk-1.0.8/diskio-unix.cc --- old/gptfdisk-1.0.6/diskio-unix.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/diskio-unix.cc 2021-06-10 01:27:51.000000000 +0200 @@ -376,7 +376,7 @@ // size with the number of bytes read. // Returns the number of bytes written. int DiskIO::Write(void* buffer, int numBytes) { - int blockSize = 512, i, numBlocks, retval = 0; + int blockSize, i, numBlocks, retval = 0; char* tempSpace; // If disk isn't open, try to open it.... diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/fixparts.8 new/gptfdisk-1.0.8/fixparts.8 --- old/gptfdisk-1.0.6/fixparts.8 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/fixparts.8 2021-06-10 01:27:51.000000000 +0200 @@ -1,6 +1,6 @@ .\" Copyright 2011-2021 Roderick W. Smith ([email protected]) .\" May be distributed under the GNU General Public License -.TH "FIXPARTS" "8" "1.0.6" "Roderick W. Smith" "FixParts Manual" +.TH "FIXPARTS" "8" "1.0.8" "Roderick W. Smith" "FixParts Manual" .SH "NAME" fixparts \- MBR partition table repair utility .SH "SYNOPSIS" @@ -258,7 +258,7 @@ * Justin Maggard ([email protected]) -* Dwight Schauer ([email protected]) +* Dwight Schauer ([email protected]) * Florian Zumbiehl ([email protected]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/fixparts.html new/gptfdisk-1.0.8/fixparts.html --- old/gptfdisk-1.0.6/fixparts.html 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/fixparts.html 2021-06-10 01:27:51.000000000 +0200 @@ -4,7 +4,7 @@ <HTML><HEAD><TITLE>Man page of FIXPARTS</TITLE> </HEAD><BODY> <H1>FIXPARTS</H1> -Section: FixParts Manual (8)<BR>Updated: 1.0.6<BR><A HREF="#index">Index</A> +Section: FixParts Manual (8)<BR>Updated: 1.0.8<BR><A HREF="#index">Index</A> <A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR> <A NAME="lbAB"> </A> @@ -313,7 +313,7 @@ <P> * Justin Maggard (<A HREF="mailto:[email protected]">[email protected]</A>) <P> -* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) +* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) <P> * Florian Zumbiehl (<A HREF="mailto:[email protected]">[email protected]</A>) <P> @@ -365,6 +365,6 @@ This document was created by <A HREF="/cgi-bin/man/man2html">man2html</A>, using the manual pages.<BR> -Time: 22:14:27 GMT, January 13, 2021 +Time: 23:27:51 GMT, June 09, 2021 </BODY> </HTML> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gdisk.8 new/gptfdisk-1.0.8/gdisk.8 --- old/gptfdisk-1.0.6/gdisk.8 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gdisk.8 2021-06-10 01:27:51.000000000 +0200 @@ -1,6 +1,6 @@ .\" Copyright 2011-2021 Roderick W. Smith ([email protected]) .\" May be distributed under the GNU General Public License -.TH "GDISK" "8" "1.0.6" "Roderick W. Smith" "GPT fdisk Manual" +.TH "GDISK" "8" "1.0.8" "Roderick W. Smith" "GPT fdisk Manual" .SH "NAME" gdisk \- Interactive GUID partition table (GPT) manipulator .SH "SYNOPSIS" @@ -420,6 +420,14 @@ ignore these attributes. .TP +.B b +Swap the byte order for the name of the specified partition. Some +partitioning tools, including GPT fdisk 1.0.7 and earlier, can write the +partition name in the wrong byte order on big-endian computers, such as the +IBM s390 mainframes and PowerPC-based Macs. This feature corrects this +problem. + +.TP .B c Change partition GUID. You can enter a custom unique GUID for a partition using this option. (Note this refers to the GUID that uniquely identifies a @@ -673,7 +681,7 @@ * Justin Maggard ([email protected]) -* Dwight Schauer ([email protected]) +* Dwight Schauer ([email protected]) * Florian Zumbiehl ([email protected]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gdisk.html new/gptfdisk-1.0.8/gdisk.html --- old/gptfdisk-1.0.6/gdisk.html 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gdisk.html 2021-06-10 01:27:51.000000000 +0200 @@ -4,7 +4,7 @@ <HTML><HEAD><TITLE>Man page of GDISK</TITLE> </HEAD><BODY> <H1>GDISK</H1> -Section: GPT fdisk Manual (8)<BR>Updated: 1.0.6<BR><A HREF="#index">Index</A> +Section: GPT fdisk Manual (8)<BR>Updated: 1.0.8<BR><A HREF="#index">Index</A> <A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR> <A NAME="lbAB"> </A> @@ -491,6 +491,15 @@ aren't translated into anything useful. In practice, most OSes seem to ignore these attributes. <P> +<DT><B>b</B> + +<DD> +Swap the byte order for the name of the specified partition. Some +partitioning tools, including GPT fdisk 1.0.7 and earlier, can write the +partition name in the wrong byte order on big-endian computers, such as the +IBM s390 mainframes and PowerPC-based Macs. This feature corrects this +problem. +<P> <DT><B>c</B> <DD> @@ -785,7 +794,7 @@ <P> * Justin Maggard (<A HREF="mailto:[email protected]">[email protected]</A>) <P> -* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) +* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) <P> * Florian Zumbiehl (<A HREF="mailto:[email protected]">[email protected]</A>) <P> @@ -839,6 +848,6 @@ This document was created by <A HREF="/cgi-bin/man/man2html">man2html</A>, using the manual pages.<BR> -Time: 22:14:27 GMT, January 13, 2021 +Time: 23:27:51 GMT, June 09, 2021 </BODY> </HTML> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gpt.cc new/gptfdisk-1.0.8/gpt.cc --- old/gptfdisk-1.0.6/gpt.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gpt.cc 2021-06-10 01:27:51.000000000 +0200 @@ -582,7 +582,7 @@ // byte order and then undoes that reversal.) void GPTData::RecomputeCRCs(void) { uint32_t crc, hSize; - int littleEndian = 1; + int littleEndian; // If the header size is bigger than the GPT header data structure, reset it; // otherwise, set both header sizes to whatever the main one is.... @@ -1042,11 +1042,19 @@ *crcOk = CheckHeaderCRC(&tempHeader); if (tempHeader.sizeOfPartitionEntries != sizeof(GPTPart)) { - cerr << "Warning: Partition table header claims that the size of partition table\n"; - cerr << "entries is " << tempHeader.sizeOfPartitionEntries << " bytes, but this program "; - cerr << " supports only " << sizeof(GPTPart) << "-byte entries.\n"; - cerr << "Adjusting accordingly, but partition table may be garbage.\n"; - tempHeader.sizeOfPartitionEntries = sizeof(GPTPart); + // Print the below warning only if the CRC is OK -- but correct the + // problem either way. The warning is printed only on a valid CRC + // because otherwise this warning will display inappropriately when + // reading MBR disks. If the CRC is invalid, then a warning about + // that will be shown later, so the user will still know that + // something is wrong. + if (*crcOk) { + cerr << "Warning: Partition table header claims that the size of partition table\n"; + cerr << "entries is " << tempHeader.sizeOfPartitionEntries << " bytes, but this program "; + cerr << " supports only " << sizeof(GPTPart) << "-byte entries.\n"; + cerr << "Adjusting accordingly, but partition table may be garbage.\n"; + } + tempHeader.sizeOfPartitionEntries = sizeof(GPTPart); } if (allOK && (numParts != tempHeader.numParts) && *crcOk) { @@ -2136,7 +2144,6 @@ // Check to see that every sector between the earlier one and the // requested one is clear, and that it's not too early.... if (earlier >= mainHeader.firstUsableLBA) { - sectorOK = 1; testSector = earlier; do { sectorOK = IsFree(testSector++); @@ -2149,7 +2156,6 @@ // If couldn't move the sector earlier, try to move it later instead.... if ((sectorOK != 1) && (later <= mainHeader.lastUsableLBA)) { - sectorOK = 1; testSector = later; do { sectorOK = IsFree(testSector--); @@ -2446,7 +2452,7 @@ // is used on big disks (as safety for Advanced Format drives). // Returns the computed alignment value. uint32_t GPTData::ComputeAlignment(void) { - uint32_t i = 0, found, exponent = 31; + uint32_t i = 0, found, exponent; uint32_t align = DEFAULT_ALIGNMENT; if (blockSize > 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gptcl.cc new/gptfdisk-1.0.8/gptcl.cc --- old/gptfdisk-1.0.6/gptcl.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gptcl.cc 2021-06-10 01:27:51.000000000 +0200 @@ -64,6 +64,7 @@ GPTData secondDevice; int opt, numOptions = 0, saveData = 0, neverSaveData = 0; int partNum = 0, newPartNum = -1, saveNonGPT = 1, retval = 0, pretend = 0; + int byteSwapPartNum = 0; uint64_t low, high, startSector, endSector, sSize, mainTableLBA; uint64_t temp; // temporary variable; free to use in any case char *device; @@ -76,6 +77,7 @@ "list|[partnum:show|or|nand|xor|=|set|clear|toggle|get[:bitnum|hexbitmask]]"}, {"set-alignment", 'a', POPT_ARG_INT, &alignment, 'a', "set sector alignment", "value"}, {"backup", 'b', POPT_ARG_STRING, &backupFile, 'b', "backup GPT to file", "file"}, + {"byte-swap-name", 'B', POPT_ARG_INT, &byteSwapPartNum, 'B', "byte-swap partition's name", "partnum"}, {"change-name", 'c', POPT_ARG_STRING, &partName, 'c', "change partition's name", "partnum:name"}, {"recompute-chs", 'C', POPT_ARG_NONE, NULL, 'C', "recompute CHS values in protective/hybrid MBR", ""}, {"delete", 'd', POPT_ARG_INT, &deletePartNum, 'd', "delete a partition", "partnum"}, @@ -191,6 +193,15 @@ case 'a': SetAlignment(alignment); break; + case 'B': + if (IsUsedPartNum(byteSwapPartNum - 1)) { + partitions[byteSwapPartNum - 1].ReverseNameBytes(); + cout << "Changed partition " << byteSwapPartNum << "'s name to " + << partitions[byteSwapPartNum - 1].GetDescription() << "\n"; + JustLooking(0); + saveData = 1; + } + break; case 'b': SaveGPTBackup(backupFile); free(backupFile); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gptcurses.cc new/gptfdisk-1.0.8/gptcurses.cc --- old/gptfdisk-1.0.6/gptcurses.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gptcurses.cc 2021-06-10 01:27:51.000000000 +0200 @@ -437,7 +437,6 @@ move(LINES - 4, 0); clrtobot(); while ((newFirstLBA < currentSpace->firstLBA) || (newFirstLBA > currentSpace->lastLBA)) { - newFirstLBA = currentSpace->firstLBA; move(LINES - 4, 0); clrtoeol(); newFirstLBA = currentSpace->firstLBA; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gptpart.cc new/gptfdisk-1.0.8/gptpart.cc --- old/gptfdisk-1.0.6/gptpart.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gptpart.cc 2021-06-10 01:27:51.000000000 +0200 @@ -92,7 +92,6 @@ size_t pos = 0 ; while ( ( pos < NAME_SIZE ) && ( name[ pos ] != 0 ) ) { uint16_t cp = name[ pos ++ ] ; - if ( ! IsLittleEndian() ) ReverseBytes( & cp , 2 ) ; // first to utf32 uint32_t uni ; if ( cp < 0xd800 || cp > 0xdfff ) { @@ -243,7 +242,6 @@ // then to utf16le if ( uni < 0x10000 ) { name[ pos ] = (uint16_t) uni ; - if ( ! IsLittleEndian() ) ReverseBytes( name + pos , 2 ) ; pos ++ ; } // if else { @@ -253,10 +251,8 @@ } // if uni -= 0x10000 ; name[ pos ] = (uint16_t)( uni >> 10 ) | 0xd800 ; - if ( ! IsLittleEndian() ) ReverseBytes( name + pos , 2 ) ; pos ++ ; name[ pos ] = (uint16_t)( uni & 0x3ff ) | 0xdc00 ; - if ( ! IsLittleEndian() ) ReverseBytes( name + pos , 2 ) ; pos ++ ; } } // for @@ -416,14 +412,18 @@ // Reverse the bytes of integral data types and of the UTF-16LE name; // used on big-endian systems. void GPTPart::ReversePartBytes(void) { - int i; - ReverseBytes(&firstLBA, 8); ReverseBytes(&lastLBA, 8); ReverseBytes(&attributes, 8); + ReverseNameBytes(); +} // GPTPart::ReversePartBytes() + +void GPTPart::ReverseNameBytes(void) { + int i; + for (i = 0; i < NAME_SIZE; i ++ ) ReverseBytes(name + i, 2); -} // GPTPart::ReverseBytes() +} // GPTPart::ReverseNameBytes() /**************************************** * Functions requiring user interaction * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gptpart.h new/gptfdisk-1.0.8/gptpart.h --- old/gptfdisk-1.0.6/gptpart.h 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gptpart.h 2021-06-10 01:27:51.000000000 +0200 @@ -94,6 +94,7 @@ void BlankPartition(void); // empty partition of data int DoTheyOverlap(const GPTPart & other); // returns 1 if there's overlap void ReversePartBytes(void); // reverse byte order of all integer fields + void ReverseNameBytes(void); // reverse byte order of partition's name field // Functions requiring user interaction void ChangeType(void); // Change the type code diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gpttext.cc new/gptfdisk-1.0.8/gpttext.cc --- old/gptfdisk-1.0.6/gpttext.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gpttext.cc 2021-06-10 01:27:51.000000000 +0200 @@ -251,7 +251,7 @@ } while (IsFree(sector) == 0); lastBlock = sector; - firstFreePart = GPTData::CreatePartition(partNum, firstBlock, lastBlock); + GPTData::CreatePartition(partNum, firstBlock, lastBlock); partitions[partNum].ChangeType(); partitions[partNum].SetDefaultDescription(); } else { @@ -341,6 +341,22 @@ return retval; } // GPTDataTextUI::SetName() +// Enable the user to byte-swap the name of the partition. Used to correct +// partition names damaged by incorrect byte order, as could be created by +// GPT fdisk 1.0.7 and earlier on big-endian systems, and perhaps other tools. +void GPTDataTextUI::ReverseName(uint32_t partNum) { + int swapBytes; + + cout << "Current name is: " << partitions[partNum].GetDescription() << "\n"; + partitions[partNum].ReverseNameBytes(); + cout << "Byte-swapped name is: " << partitions[partNum].GetDescription() << "\n"; + cout << "Do you want to byte-swap the name? "; + swapBytes = (GetYN() == 'Y'); + // Already swapped for display, so undo if necessary.... + if (!swapBytes) + partitions[partNum].ReverseNameBytes(); +} // GPTDataTextUI::ReverseName() + // Ask user for two partition numbers and swap them in the table. Note that // this just reorders table entries; it doesn't adjust partition layout on // the disk. @@ -799,6 +815,9 @@ else cout << "No partitions\n"; break; + case 'b': case 'B': + ReverseName(GetPartNum()); + break; case 'c': case 'C': ChangeUniqueGuid(); break; @@ -896,6 +915,7 @@ void GPTDataTextUI::ShowExpertCommands(void) { cout << "a\tset attributes\n"; + cout << "b\tbyte-swap a partition's name\n"; cout << "c\tchange partition GUID\n"; cout << "d\tdisplay the sector alignment value\n"; cout << "e\trelocate backup data structures to the end of the disk\n"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/gpttext.h new/gptfdisk-1.0.8/gpttext.h --- old/gptfdisk-1.0.6/gpttext.h 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/gpttext.h 2021-06-10 01:27:51.000000000 +0200 @@ -49,6 +49,7 @@ void ChangeUniqueGuid(void); void SetAttributes(uint32_t partNum); int SetName(uint32_t partNum); + void ReverseName(uint32_t partNum); int SwapPartitions(void); int DestroyGPTwPrompt(void); // Returns 1 if user proceeds void ShowDetails(void); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/parttypes.cc new/gptfdisk-1.0.8/parttypes.cc --- old/gptfdisk-1.0.6/parttypes.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/parttypes.cc 2021-06-10 01:27:51.000000000 +0200 @@ -83,6 +83,8 @@ AddType(0x0400, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-16 < 32M AddType(0x0600, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-16 AddType(0x0700, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 1); // NTFS (or HPFS) + AddType(0x0701, "558D43C5-A1AC-43C0-AAC8-D1472B2923D1", "Microsoft Storage Replica", 1); + AddType(0x0702, "90B6FF38-B98F-4358-A21F-48F35B4A8AD3", "ArcaOS Type 1", 1); AddType(0x0b00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-32 AddType(0x0c00, "EBD0A0A2-B9E5-4433-87C0-68B6B72699C7", "Microsoft basic data", 0); // FAT-32 LBA AddType(0x0c01, "E3C9E316-0B5C-4DB8-817D-F92DF00215AE", "Microsoft reserved"); @@ -163,6 +165,8 @@ // Used by Intel Rapid Start technology AddType(0x8400, "D3BFE2DE-3DAF-11DF-BA40-E3A556D89593", "Intel Rapid Start"); + // This is another Intel-associated technology, so I'm keeping it close to the previous one.... + AddType(0x8401, "7C5222BD-8F5D-4087-9C00-BF9843C7B58C", "SPDK block device"); // Type codes for Container Linux (formerly CoreOS; https://coreos.com) AddType(0x8500, "5DFBF5F4-2848-4BAC-AA5E-0D9A20B745A6", "Container Linux /usr"); @@ -296,6 +300,9 @@ // QNX Power-Safe (QNX6) AddType(0xb300, "CEF5A9AD-73BC-4601-89F3-CDEEEEE321A1", "QNX6 Power-Safe"); + // Barebox boot loader; see https://barebox.org/doc/latest/user/state.html?highlight=guid#sd-emmc-and-ata + AddType(0xbb00, "4778ED65-BF42-45FA-9C5B-287A1DC4AAB1", "Barebox boot loader"); + // Acronis Secure Zone AddType(0xbc00, "0311FC50-01CA-4725-AD77-9ADBB20ACE98", "Acronis Secure Zone"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/sgdisk.8 new/gptfdisk-1.0.8/sgdisk.8 --- old/gptfdisk-1.0.6/sgdisk.8 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/sgdisk.8 2021-06-10 01:27:51.000000000 +0200 @@ -1,6 +1,6 @@ .\" Copyright 2011-2021 Roderick W. Smith ([email protected]) .\" May be distributed under the GNU General Public License -.TH "SGDISK" "8" "1.0.6" "Roderick W. Smith" "GPT fdisk Manual" +.TH "SGDISK" "8" "1.0.8" "Roderick W. Smith" "GPT fdisk Manual" .SH "NAME" sgdisk \- Command\-line GUID partition table (GPT) manipulator for Linux and Unix .SH "SYNOPSIS" @@ -183,6 +183,14 @@ will reflect GPT fdisk's first\-pass interpretation of the GPT. .TP +.B \-B, \-\-byte\-swap\-name=partnum +Swap the byte order for the name of the specified partition. Some +partitioning tools, including GPT fdisk 1.0.7 and earlier, can write the +partition name in the wrong byte order on big-endian computers, such as the +IBM s390 mainframes and PowerPC-based Macs. This feature corrects this +problem. + +.TP .B \-c, \-\-change\-name=partnum:name Change the GPT name of a partition. This name is encoded as a UTF\-16 string, but proper entry and display of anything beyond basic ASCII values @@ -339,7 +347,8 @@ start of the largest available block for the start sector and the end of the same block for the end sector. A partnum value of 0 causes the program to use the first available partition number. Subsequent uses of the -\fI\-A\fR, \fI\-c\fR, \fI\-t\fR, and \fI\-u\fR options may also use +\fI\-A\fR (\fI\-\-attributes\fR), \fI\-c\fR (\fI\-\-change\-name\fR), \fI\-t\fR +(\fI\-\-typecode\fR), and \fI\-u\fR (\fI\-\-partition\-guid\fR) options may also use \fI0\fR to refer to the same partition. .TP @@ -593,7 +602,7 @@ * Justin Maggard ([email protected]) -* Dwight Schauer ([email protected]) +* Dwight Schauer ([email protected]) * Florian Zumbiehl ([email protected]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/sgdisk.html new/gptfdisk-1.0.8/sgdisk.html --- old/gptfdisk-1.0.6/sgdisk.html 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/sgdisk.html 2021-06-10 01:27:51.000000000 +0200 @@ -4,7 +4,7 @@ <HTML><HEAD><TITLE>Man page of SGDISK</TITLE> </HEAD><BODY> <H1>SGDISK</H1> -Section: GPT fdisk Manual (8)<BR>Updated: 1.0.6<BR><A HREF="#index">Index</A> +Section: GPT fdisk Manual (8)<BR>Updated: 1.0.8<BR><A HREF="#index">Index</A> <A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR> <A NAME="lbAB"> </A> @@ -209,6 +209,15 @@ the backup may not accurately reflect the damaged state; instead, they will reflect GPT fdisk's first-pass interpretation of the GPT. <P> +<DT><B>-B, --byte-swap-name=partnum</B> + +<DD> +Swap the byte order for the name of the specified partition. Some +partitioning tools, including GPT fdisk 1.0.7 and earlier, can write the +partition name in the wrong byte order on big-endian computers, such as the +IBM s390 mainframes and PowerPC-based Macs. This feature corrects this +problem. +<P> <DT><B>-c, --change-name=partnum:name</B> <DD> @@ -383,7 +392,8 @@ start of the largest available block for the start sector and the end of the same block for the end sector. A partnum value of 0 causes the program to use the first available partition number. Subsequent uses of the -<I>-A</I>, <I>-c</I>, <I>-t</I>, and <I>-u</I> options may also use +<I>-A</I> (<I>--attributes</I>), <I>-c</I> (<I>--change-name</I>), <I>-t</I> +(<I>--typecode</I>), and <I>-u</I> (<I>--partition-guid</I>) options may also use <I>0</I> to refer to the same partition. <P> <DT><B>-N, --largest-new=num</B> @@ -683,7 +693,7 @@ <P> * Justin Maggard (<A HREF="mailto:[email protected]">[email protected]</A>) <P> -* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) +* Dwight Schauer (<A HREF="mailto:[email protected]">[email protected]</A>) <P> * Florian Zumbiehl (<A HREF="mailto:[email protected]">[email protected]</A>) <P> @@ -738,6 +748,6 @@ This document was created by <A HREF="/cgi-bin/man/man2html">man2html</A>, using the manual pages.<BR> -Time: 22:14:27 GMT, January 13, 2021 +Time: 23:27:51 GMT, June 09, 2021 </BODY> </HTML> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/support.cc new/gptfdisk-1.0.8/support.cc --- old/gptfdisk-1.0.6/support.cc 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/support.cc 2021-06-10 01:27:51.000000000 +0200 @@ -154,7 +154,7 @@ // compiled with GCC (and so the value is rejected), whereas when VC++ // is used, the default value is returned. uint64_t IeeeToInt(string inValue, uint64_t sSize, uint64_t low, uint64_t high, uint64_t def) { - uint64_t response = def, bytesPerUnit = 1, mult = 1, divide = 1; + uint64_t response = def, bytesPerUnit, mult = 1, divide = 1; size_t foundAt = 0; char suffix = ' ', plusFlag = ' '; string suffixes = "KMGTPE"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gptfdisk-1.0.6/support.h new/gptfdisk-1.0.8/support.h --- old/gptfdisk-1.0.6/support.h 2021-01-13 23:14:27.000000000 +0100 +++ new/gptfdisk-1.0.8/support.h 2021-06-10 01:27:51.000000000 +0200 @@ -8,7 +8,7 @@ #include <stdlib.h> #include <string> -#define GPTFDISK_VERSION "1.0.6" +#define GPTFDISK_VERSION "1.0.8" #if defined (__FreeBSD__) || defined (__FreeBSD_kernel__) || defined (__APPLE__) // Darwin (Mac OS) & FreeBSD: disk IOCTLs are different, and there is no lseek64
