Permalink
Browse files

FileS tab was not ignoring zero byte files. Made some syntax improvem…

…ents to the earlier v3.0.3 fixes
  • Loading branch information...
tedsmith committed Nov 6, 2018
1 parent 51afae7 commit 1320dfc930556ea64ace8683b12e6af4694d889b
Showing with 191 additions and 172 deletions.
  1. +6 −0 CHANGELOG.md
  2. +64 −64 quickhash.lpi
  3. +5 −2 uKnownHashLists.pas
  4. +104 −104 unit2.lfm
  5. +12 −2 unit2.pas
@@ -1,6 +1,12 @@
Version History
===============
v3.0.3 (Nov 2018)
The 'Load Hashlist' functionality in the 'FileS' tab would accept all values but then compare them against computer uppercase hashes strings, meaning any lowercase imported values were not matched.
Now all input is converted to uppercase first.
The 'FileS' tab was computing file hashes of zero bytes returning the default initialisation hash for the chosen algorithm. I thought I had corrected that a long time ago but I may only have done
so for the 'File' tab according to the release notes. That was fixed returning instead 'ZERO BYTE FILE'.
v3.0.2 (Mar 2018)
Filenames and paths were being truncated at 128 characters in length in the display grid, despite still finding and hashing the files. It was merely a display problem, but quite a signfiicant display problem for logging purposes!
Better string handling in SQLite dbases unit to ensure strings are not truncated
@@ -13,9 +13,9 @@
<VersionInfo>
<UseVersionInfo Value="True"/>
<MajorVersionNr Value="3"/>
<RevisionNr Value="3"/>
<RevisionNr Value="2"/>
<Language Value="0809"/>
<StringTable Comments="Free, cross platform, open-source file and disk hashing software" CompanyName="Ted Smith (Ted Technology on Sourceforge)" FileDescription="File hashing GUI for Linux &amp; Windows" LegalCopyright="2011 - 2018 (c) Ted Smith" ProductName="QuickHash (www.quickhash-gui.org)" ProductVersion=""/>
<StringTable Comments="Free, cross platform, open-source file and disk hashing software" CompanyName="Ted Smith (Ted Technology on Sourceforge)" FileDescription="File hashing GUI for Linux &amp; Windows" LegalCopyright="2011 - 2018 (c) Ted Smith" ProductName="QuickHash (www.quickhash-gui.org)"/>
</VersionInfo>
<BuildModes Count="1">
<Item1 Name="default" Default="True"/>
@@ -91,8 +91,9 @@
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="Unit2"/>
<TopLine Value="4745"/>
<CursorPos X="21" Y="4876"/>
<IsVisibleTab Value="True"/>
<TopLine Value="4783"/>
<CursorPos X="32" Y="4812"/>
<UsageCount Value="201"/>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
@@ -336,8 +337,8 @@
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<EditorIndex Value="2"/>
<TopLine Value="738"/>
<CursorPos Y="770"/>
<TopLine Value="1259"/>
<CursorPos X="5" Y="1262"/>
<UsageCount Value="200"/>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
@@ -368,23 +369,22 @@
<EditorIndex Value="-1"/>
<TopLine Value="4"/>
<CursorPos X="53" Y="16"/>
<UsageCount Value="181"/>
<UsageCount Value="180"/>
</Unit38>
<Unit39>
<Filename Value="uloadhashlist.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uLoadhashlist"/>
<EditorIndex Value="-1"/>
<CursorPos X="21"/>
<UsageCount Value="179"/>
<UsageCount Value="178"/>
</Unit39>
<Unit40>
<Filename Value="uKnownHashLists.pas"/>
<IsVisibleTab Value="True"/>
<EditorIndex Value="1"/>
<TopLine Value="56"/>
<CursorPos X="34" Y="72"/>
<UsageCount Value="85"/>
<TopLine Value="52"/>
<CursorPos X="11" Y="78"/>
<UsageCount Value="86"/>
<Loaded Value="True"/>
</Unit40>
<Unit41>
@@ -455,123 +455,123 @@
<JumpHistory Count="30" HistoryIndex="29">
<Position1>
<Filename Value="unit2.pas"/>
<Caret Line="3378" Column="35" TopLine="3351"/>
<Caret Line="2901" Column="37" TopLine="2873"/>
</Position1>
<Position2>
<Filename Value="unit2.pas"/>
<Caret Line="3402" Column="46" TopLine="3375"/>
<Caret Line="3236" Column="47" TopLine="3208"/>
</Position2>
<Position3>
<Filename Value="unit2.pas"/>
<Caret Line="3405" Column="46" TopLine="3378"/>
<Caret Line="3246" Column="47" TopLine="3218"/>
</Position3>
<Position4>
<Filename Value="unit2.pas"/>
<Caret Line="3540" Column="35" TopLine="3513"/>
<Caret Line="3378" Column="35" TopLine="3349"/>
</Position4>
<Position5>
<Filename Value="unit2.pas"/>
<Caret Line="3842" Column="21" TopLine="3821"/>
<Caret Line="3402" Column="46" TopLine="3373"/>
</Position5>
<Position6>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="788" Column="59" TopLine="757"/>
<Filename Value="unit2.pas"/>
<Caret Line="3405" Column="46" TopLine="3376"/>
</Position6>
<Position7>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="759" Column="18" TopLine="733"/>
<Filename Value="unit2.pas"/>
<Caret Line="3559" Column="35" TopLine="3559"/>
</Position7>
<Position8>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="51" Column="101" TopLine="35"/>
<Filename Value="unit2.pas"/>
<Caret Line="503" Column="25" TopLine="486"/>
</Position8>
<Position9>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="320" Column="31" TopLine="294"/>
<Filename Value="unit2.pas"/>
<Caret Line="1111" Column="14" TopLine="1078"/>
</Position9>
<Position10>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="748" Column="114" TopLine="721"/>
<Filename Value="unit2.pas"/>
<Caret Line="2941" Column="20" TopLine="2912"/>
</Position10>
<Position11>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="750" Column="12" TopLine="723"/>
<Filename Value="unit2.pas"/>
<Caret Line="3357" Column="20" TopLine="3328"/>
</Position11>
<Position12>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="759" Column="21" TopLine="732"/>
<Filename Value="unit2.pas"/>
<Caret Line="3562" Column="45" TopLine="3533"/>
</Position12>
<Position13>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="761" Column="22" TopLine="734"/>
<Filename Value="unit2.pas"/>
<Caret Line="3563" Column="14" TopLine="3534"/>
</Position13>
<Position14>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="762" Column="173" TopLine="735"/>
<Filename Value="unit2.pas"/>
<Caret Line="3567" Column="14" TopLine="3538"/>
</Position14>
<Position15>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="766" Column="20" TopLine="739"/>
<Filename Value="unit2.pas"/>
<Caret Line="3568" Column="14" TopLine="3539"/>
</Position15>
<Position16>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="767" Column="171" TopLine="740"/>
<Filename Value="unit2.pas"/>
<Caret Line="3608" Column="16" TopLine="3580"/>
</Position16>
<Position17>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="779" Column="75" TopLine="753"/>
<Filename Value="unit2.pas"/>
<Caret Line="3724" Column="70" TopLine="3701"/>
</Position17>
<Position18>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="873" Column="115" TopLine="846"/>
<Filename Value="unit2.pas"/>
<Caret Line="2398" Column="29" TopLine="2385"/>
</Position18>
<Position19>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="874" Column="59" TopLine="847"/>
<Caret Line="54" Column="15" TopLine="38"/>
</Position19>
<Position20>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="895" Column="117" TopLine="868"/>
<Filename Value="unit2.pas"/>
<Caret Line="2403" Column="50" TopLine="2376"/>
</Position20>
<Position21>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="896" Column="86" TopLine="869"/>
<Filename Value="unit2.pas"/>
<Caret Line="1838" Column="28" TopLine="1821"/>
</Position21>
<Position22>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="918" Column="117" TopLine="891"/>
<Filename Value="unit2.pas"/>
<Caret Line="1910" Column="33" TopLine="1882"/>
</Position22>
<Position23>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="919" Column="86" TopLine="892"/>
<Filename Value="unit2.pas"/>
<Caret Line="2006" Column="49" TopLine="1977"/>
</Position23>
<Position24>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="51" Column="101" TopLine="35"/>
<Filename Value="unit2.pas"/>
<Caret Line="81" Column="48" TopLine="58"/>
</Position24>
<Position25>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="320" Column="31" TopLine="294"/>
<Filename Value="unit2.pas"/>
<Caret Line="488" Column="29" TopLine="475"/>
</Position25>
<Position26>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="748" Column="54" TopLine="721"/>
<Filename Value="unit2.pas"/>
<Caret Line="2221" Column="39" TopLine="2192"/>
</Position26>
<Position27>
<Filename Value="dbases_sqlite.pas"/>
<Caret Line="51" Column="41" TopLine="35"/>
<Filename Value="unit2.pas"/>
<Caret Line="2222" Column="41" TopLine="2193"/>
</Position27>
<Position28>
<Filename Value="unit2.pas"/>
<Caret Line="3835" Column="35" TopLine="3821"/>
<Caret Line="3849" Column="97" TopLine="3821"/>
</Position28>
<Position29>
<Filename Value="unit2.pas"/>
<Caret Line="3834" Column="30" TopLine="3821"/>
<Caret Line="3858" Column="52" TopLine="3830"/>
</Position29>
<Position30>
<Filename Value="uKnownHashLists.pas"/>
<Caret Line="70" Column="44" TopLine="57"/>
<Filename Value="unit2.pas"/>
<Caret Line="4449" Column="63" TopLine="4421"/>
</Position30>
</JumpHistory>
</ProjectOptions>
@@ -67,10 +67,13 @@ procedure ImportHashList(Filename : string);
reset(InFile);
while not EOF(InFile) do
begin
// Read input hash list line
readln(InFile, SourceData);
SourceData := Uppercase(SourceData);
// Convert input line to uppercase to safeguard against any lowercase conflicts
SourceData := Uppercase(Trim(SourceData));
// Increment the line counter
inc(LineCounter, 1);
// Add the hash value if not already in the list
// Add the hash value, only if not already in the list, avoiding duplicates
if HL1.FindIndexOf(SourceData) < 0 then
begin
HL1.Add(SourceData, @SourceData);
Oops, something went wrong.

0 comments on commit 1320dfc

Please sign in to comment.