--- UEFITool-A45-old/UEFIExtract/ffsdumper.cpp 2017-12-11 05:56:00.000000000 +0400 +++ UEFITool-A45/UEFIExtract/ffsdumper.cpp 2018-10-16 21:21:46.200195300 +0400 @@ -83,7 +83,12 @@ if (model->type(childIndex) != Types::Volume) useText = !model->text(childIndex).isEmpty(); - QString childPath = QString("%1/%2 %3").arg(path).arg(i).arg(useText ? model->text(childIndex) : model->name(childIndex)); +QString childPath; +if (model->type(childIndex) == Types::Volume) + { childPath = QString("%1").arg(path);} +else + { childPath = QString("%1/%2").arg(path).arg(useText ? model->text(childIndex) : model->name(childIndex)); } + result = recursiveDump(childIndex, childPath, dumpAll, guid); if (result) return result; --- UEFITool-A45-old/common/ffsparser.cpp 2017-12-11 05:56:00.000000000 +0400 +++ UEFITool-A45/common/ffsparser.cpp 2018-02-25 04:05:03.086914000 +0400 @@ -1449,7 +1449,8 @@ tail.size(), tail.size(), fileHeader->State) + usprintf("\nHeader checksum: %02Xh", fileHeader->IntegrityCheck.Checksum.Header) + (msgInvalidHeaderChecksum ? usprintf(", invalid, should be %02Xh", calculatedHeader) : UString(", valid")) + - usprintf("\nData checksum: %02Xh", fileHeader->IntegrityCheck.Checksum.File) + (msgInvalidDataChecksum ? usprintf(", invalid, should be %02Xh", calculatedData) : UString(", valid")); + usprintf("\nData checksum: %02Xh", fileHeader->IntegrityCheck.Checksum.File) + (msgInvalidDataChecksum ? usprintf(", invalid, should be %02Xh", calculatedData) : UString(", valid")) + + usprintf("\nData checksum valid: %02Xh", calculatedData); UString text; bool isVtf = false;