Skip to content

Commit 7b9528d

Browse files
introfogiText-CI
authored andcommitted
Fix finger print logic
DEVSIX-5902 Autoported commit. Original commit hash: [e7628e42c]
1 parent edbf657 commit 7b9528d

File tree

5 files changed

+39
-35
lines changed

5 files changed

+39
-35
lines changed

itext.tests/itext.commons.tests/itext/commons/actions/data/CommonsProductDataTest.cs

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,15 @@ public class CommonsProductDataTest : ExtendedITextTest {
2727
[NUnit.Framework.Test]
2828
public virtual void GetInstanceTest() {
2929
ProductData commonsProductData = CommonsProductData.GetInstance();
30-
NUnit.Framework.Assert.AreEqual("Commons", commonsProductData.GetPublicProductName());
31-
NUnit.Framework.Assert.AreEqual("commons", commonsProductData.GetProductName());
32-
NUnit.Framework.Assert.AreEqual("7.2.0-SNAPSHOT", commonsProductData.GetVersion());
33-
NUnit.Framework.Assert.AreEqual(2000, commonsProductData.GetSinceCopyrightYear());
34-
NUnit.Framework.Assert.AreEqual(2021, commonsProductData.GetToCopyrightYear());
30+
NUnit.Framework.Assert.AreEqual(CommonsProductData.COMMONS_PUBLIC_PRODUCT_NAME, commonsProductData.GetPublicProductName
31+
());
32+
NUnit.Framework.Assert.AreEqual(CommonsProductData.COMMONS_PRODUCT_NAME, commonsProductData.GetProductName
33+
());
34+
NUnit.Framework.Assert.AreEqual(CommonsProductData.COMMONS_VERSION, commonsProductData.GetVersion());
35+
NUnit.Framework.Assert.AreEqual(CommonsProductData.COMMONS_COPYRIGHT_SINCE, commonsProductData.GetSinceCopyrightYear
36+
());
37+
NUnit.Framework.Assert.AreEqual(CommonsProductData.COMMONS_COPYRIGHT_TO, commonsProductData.GetToCopyrightYear
38+
());
3539
}
3640
}
3741
}

itext.tests/itext.kernel.tests/itext/kernel/pdf/TrailerTest.cs

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ source product.
4444
using System.IO;
4545
using iText.Commons.Actions.Data;
4646
using iText.Commons.Utils;
47+
using iText.Kernel.Actions.Data;
4748
using iText.Kernel.Font;
4849
using iText.Kernel.Pdf.Canvas;
4950
using iText.Test;
@@ -81,27 +82,26 @@ public virtual void TrailerFingerprintTest() {
8182
}
8283

8384
private bool DoesTrailerContainFingerprint(FileInfo file, String fingerPrint) {
84-
FileStream raf = FileUtil.GetRandomAccessFile(file);
85-
// put the pointer at the end of the file
86-
raf.Seek(raf.Length);
87-
// look for coreProductData
88-
String coreProductData = "%iText-Core-7.2.0-SNAPSHOT";
89-
String templine = "";
90-
while (!templine.Contains(coreProductData)) {
91-
templine = (char)raf.ReadByte() + templine;
92-
raf.Seek(raf.Position - 2);
85+
using (FileStream raf = FileUtil.GetRandomAccessFile(file)) {
86+
// put the pointer at the end of the file
87+
raf.Seek(raf.Length);
88+
// look for coreProductData
89+
String coreProductData = "%iText-Core-" + ITextCoreProductData.GetInstance().GetVersion();
90+
String templine = "";
91+
while (!templine.Contains(coreProductData)) {
92+
templine = (char)raf.ReadByte() + templine;
93+
raf.Seek(raf.Position - 2);
94+
}
95+
// look for fingerprint
96+
char read = ' ';
97+
templine = "";
98+
while (read != '%') {
99+
read = (char)raf.ReadByte();
100+
templine = read + templine;
101+
raf.Seek(raf.Position - 2);
102+
}
103+
return templine.Contains(fingerPrint);
93104
}
94-
// look for fingerprint
95-
char read = ' ';
96-
templine = "";
97-
while (read != '%') {
98-
read = (char)raf.ReadByte();
99-
templine = read + templine;
100-
raf.Seek(raf.Position - 2);
101-
}
102-
bool output = templine.Contains(fingerPrint);
103-
raf.Dispose();
104-
return output;
105105
}
106106
}
107107
}

itext/itext.commons/itext/commons/actions/data/CommonsProductData.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ namespace iText.Commons.Actions.Data {
2929
/// related to iText commons module.
3030
/// </summary>
3131
public sealed class CommonsProductData {
32-
private const String COMMONS_PUBLIC_PRODUCT_NAME = "Commons";
32+
internal const String COMMONS_PUBLIC_PRODUCT_NAME = "Commons";
3333

34-
private const String COMMONS_PRODUCT_NAME = "commons";
34+
internal const String COMMONS_PRODUCT_NAME = "commons";
3535

36-
private const String COMMONS_VERSION = "7.2.0-SNAPSHOT";
36+
internal const String COMMONS_VERSION = "7.2.0-SNAPSHOT";
3737

38-
private const int COMMONS_COPYRIGHT_SINCE = 2000;
38+
internal const int COMMONS_COPYRIGHT_SINCE = 2000;
3939

40-
private const int COMMONS_COPYRIGHT_TO = 2021;
40+
internal const int COMMONS_COPYRIGHT_TO = 2021;
4141

4242
private static readonly ProductData COMMONS_PRODUCT_DATA = new ProductData(COMMONS_PUBLIC_PRODUCT_NAME, COMMONS_PRODUCT_NAME
4343
, COMMONS_VERSION, COMMONS_COPYRIGHT_SINCE, COMMONS_COPYRIGHT_TO);

itext/itext.kernel/itext/kernel/pdf/PdfXrefTable.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -473,13 +473,13 @@ private int GetOffsetSize(long startxref) {
473473
/// <param name="document">pdfDocument to write the fingerprint to</param>
474474
protected internal static void WriteKeyInfo(PdfDocument document) {
475475
PdfWriter writer = document.GetWriter();
476-
FingerPrint fingerPrint = document.GetFingerPrint();
477-
if (fingerPrint.GetProducts().IsEmpty()) {
478-
writer.WriteString(MessageFormatUtil.Format("%iText-{0}-no-registered-products", ITextCoreProductData.GetInstance
476+
ICollection<ProductData> products = document.GetFingerPrint().GetProducts();
477+
if (products.IsEmpty()) {
478+
writer.WriteString(MessageFormatUtil.Format("%iText-{0}-no-registered-products\n", ITextCoreProductData.GetInstance
479479
().GetVersion()));
480480
}
481481
else {
482-
foreach (ProductData productData in fingerPrint.GetProducts()) {
482+
foreach (ProductData productData in products) {
483483
writer.WriteString(MessageFormatUtil.Format("%iText-{0}-{1}\n", productData.GetPublicProductName(), productData
484484
.GetVersion()));
485485
}

port-hash

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9da3a4342a9ec9a6c9addfa2c344785b1cdb316a
1+
e7628e42ca07c223a5a1d9a5df9da7aa5f0a010d

0 commit comments

Comments
 (0)