Skip to content

Commit

Permalink
Fixed access violantion errors
Browse files Browse the repository at this point in the history
  • Loading branch information
maurobio committed Sep 16, 2023
1 parent 151ada9 commit d2f2530
Show file tree
Hide file tree
Showing 5 changed files with 99 additions and 82 deletions.
3 changes: 2 additions & 1 deletion dtp/Especies.lpi
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
<VersionInfo>
<UseVersionInfo Value="True"/>
<MajorVersionNr Value="1"/>
<RevisionNr Value="5"/>
<RevisionNr Value="6"/>
</VersionInfo>
<BuildModes Count="1">
<Item1 Name="Default" Default="True"/>
Expand Down Expand Up @@ -75,6 +75,7 @@
<GenerateDebugInfo Value="False"/>
</Debugging>
<Options>
<LinkerOptions Value="-R ./"/>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
Expand Down
123 changes: 66 additions & 57 deletions dtp/Especies.lps
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
<PathDelim Value="\"/>
<Version Value="11"/>
<BuildModes Active="Default"/>
<Units Count="6">
<Units Count="7">
<Unit0>
<Filename Value="Especies.lpr"/>
<IsPartOfProject Value="True"/>
<EditorIndex Value="-1"/>
<CursorPos X="14" Y="9"/>
<UsageCount Value="60"/>
<UsageCount Value="62"/>
</Unit0>
<Unit1>
<Filename Value="main.pas"/>
Expand All @@ -19,10 +19,11 @@
<HasResources Value="True"/>
<ResourceBaseClass Value="Form"/>
<IsVisibleTab Value="True"/>
<TopLine Value="19"/>
<CursorPos X="82" Y="34"/>
<UsageCount Value="60"/>
<TopLine Value="110"/>
<CursorPos Y="118"/>
<UsageCount Value="62"/>
<Loaded Value="True"/>
<LoadedDesigner Value="True"/>
</Unit1>
<Unit2>
<Filename Value="about.pas"/>
Expand All @@ -33,7 +34,7 @@
<EditorIndex Value="2"/>
<TopLine Value="94"/>
<CursorPos X="9" Y="99"/>
<UsageCount Value="55"/>
<UsageCount Value="57"/>
<Loaded Value="True"/>
</Unit2>
<Unit3>
Expand All @@ -56,131 +57,139 @@
<Filename Value="biows.pas"/>
<UnitName Value="BioWS"/>
<EditorIndex Value="1"/>
<TopLine Value="154"/>
<CursorPos X="81" Y="25"/>
<TopLine Value="149"/>
<CursorPos X="14" Y="152"/>
<UsageCount Value="13"/>
<Loaded Value="True"/>
</Unit5>
<Unit6>
<Filename Value="C:\lazarus\fpc\3.2.0\source\packages\fcl-web\src\base\fphttpclient.pp"/>
<EditorIndex Value="-1"/>
<TopLine Value="1273"/>
<CursorPos X="33" Y="1291"/>
<UsageCount Value="10"/>
</Unit6>
</Units>
<JumpHistory Count="30" HistoryIndex="29">
<Position1>
<Filename Value="main.pas"/>
<Caret Line="454" Column="120" TopLine="438"/>
<Caret Line="356" Column="2" TopLine="347"/>
</Position1>
<Position2>
<Filename Value="main.pas"/>
<Caret Line="413" Column="47" TopLine="403"/>
<Filename Value="biows.pas"/>
<Caret Line="292" Column="18" TopLine="141"/>
</Position2>
<Position3>
<Filename Value="main.pas"/>
<Caret Line="27" Column="72" TopLine="11"/>
<Filename Value="biows.pas"/>
<Caret Line="39" TopLine="30"/>
</Position3>
<Position4>
<Filename Value="main.pas"/>
<Caret Line="189" TopLine="159"/>
<Filename Value="biows.pas"/>
<Caret Line="532" Column="8" TopLine="516"/>
</Position4>
<Position5>
<Filename Value="main.pas"/>
<Caret Line="513" Column="38" TopLine="501"/>
<Filename Value="biows.pas"/>
<Caret Line="528" Column="52" TopLine="519"/>
</Position5>
<Position6>
<Filename Value="main.pas"/>
<Caret Line="514" Column="13" TopLine="501"/>
<Filename Value="biows.pas"/>
<Caret Line="193" Column="5" TopLine="184"/>
</Position6>
<Position7>
<Filename Value="main.pas"/>
<Caret Line="75" Column="23" TopLine="67"/>
<Filename Value="biows.pas"/>
<Caret Line="529" Column="25" TopLine="519"/>
</Position7>
<Position8>
<Filename Value="main.pas"/>
<Caret Line="216" Column="56" TopLine="206"/>
<Filename Value="biows.pas"/>
<Caret Line="530" Column="7" TopLine="521"/>
</Position8>
<Position9>
<Filename Value="main.pas"/>
<Caret Line="29" TopLine="19"/>
<Filename Value="biows.pas"/>
<Caret Line="628" Column="7" TopLine="612"/>
</Position9>
<Position10>
<Filename Value="biows.pas"/>
<Caret Line="326" Column="55" TopLine="110"/>
<Caret Line="554" Column="3" TopLine="553"/>
</Position10>
<Position11>
<Filename Value="biows.pas"/>
<Caret Line="646" Column="7" TopLine="617"/>
<Caret Line="555" Column="52" TopLine="538"/>
</Position11>
<Position12>
<Filename Value="biows.pas"/>
<Filename Value="main.pas"/>
<Caret Line="314" Column="3" TopLine="299"/>
</Position12>
<Position13>
<Filename Value="biows.pas"/>
<Caret Line="281" Column="25" TopLine="241"/>
<Caret Line="140" Column="121" TopLine="125"/>
</Position13>
<Position14>
<Filename Value="biows.pas"/>
<Caret Line="80" Column="5" TopLine="70"/>
<Caret Line="418" Column="54" TopLine="400"/>
</Position14>
<Position15>
<Filename Value="biows.pas"/>
<Caret Line="604" TopLine="587"/>
<Filename Value="main.pas"/>
<Caret Line="425" Column="3" TopLine="402"/>
</Position15>
<Position16>
<Filename Value="biows.pas"/>
<Caret Line="527" Column="12" TopLine="521"/>
<Filename Value="main.pas"/>
<Caret Line="406" Column="3" TopLine="389"/>
</Position16>
<Position17>
<Filename Value="main.pas"/>
<Caret Line="264" Column="20" TopLine="258"/>
<Caret Line="361" Column="3" TopLine="325"/>
</Position17>
<Position18>
<Filename Value="main.pas"/>
<Caret Line="356" Column="2" TopLine="347"/>
<Caret Line="50" Column="35" TopLine="41"/>
</Position18>
<Position19>
<Filename Value="main.pas"/>
<Caret Line="405" Column="15" TopLine="502"/>
<Caret Line="186" Column="3" TopLine="178"/>
</Position19>
<Position20>
<Filename Value="biows.pas"/>
<Caret Line="292" Column="18" TopLine="141"/>
<Filename Value="main.pas"/>
<Caret Line="208" Column="18" TopLine="199"/>
</Position20>
<Position21>
<Filename Value="biows.pas"/>
<Caret Line="39" TopLine="30"/>
<Filename Value="main.pas"/>
<Caret Line="50" Column="43" TopLine="37"/>
</Position21>
<Position22>
<Filename Value="biows.pas"/>
<Caret Line="532" Column="8" TopLine="516"/>
<Filename Value="main.pas"/>
<Caret Line="188" Column="26" TopLine="180"/>
</Position22>
<Position23>
<Filename Value="biows.pas"/>
<Caret Line="528" Column="52" TopLine="519"/>
<Filename Value="main.pas"/>
<Caret Line="236" Column="38" TopLine="228"/>
</Position23>
<Position24>
<Filename Value="biows.pas"/>
<Caret Line="193" Column="5" TopLine="184"/>
<Filename Value="main.pas"/>
<Caret Line="242" Column="12" TopLine="233"/>
</Position24>
<Position25>
<Filename Value="biows.pas"/>
<Caret Line="529" Column="25" TopLine="519"/>
<Caret Line="152" Column="14" TopLine="161"/>
</Position25>
<Position26>
<Filename Value="biows.pas"/>
<Caret Line="530" Column="7" TopLine="521"/>
<Filename Value="main.pas"/>
<Caret Line="236" Column="5" TopLine="227"/>
</Position26>
<Position27>
<Filename Value="biows.pas"/>
<Caret Line="628" Column="7" TopLine="612"/>
<Filename Value="main.pas"/>
<Caret Line="189" Column="3" TopLine="183"/>
</Position27>
<Position28>
<Filename Value="biows.pas"/>
<Caret Line="554" Column="3" TopLine="553"/>
<Filename Value="main.pas"/>
<Caret Line="239" Column="28" TopLine="230"/>
</Position28>
<Position29>
<Filename Value="biows.pas"/>
<Caret Line="555" Column="52" TopLine="538"/>
<Filename Value="main.pas"/>
<Caret Line="122" TopLine="110"/>
</Position29>
<Position30>
<Filename Value="main.pas"/>
<Caret Line="314" Column="3" TopLine="299"/>
<Caret Line="413" Column="55" TopLine="404"/>
</Position30>
</JumpHistory>
<RunParams>
Expand Down
Binary file modified dtp/Especies.res
Binary file not shown.
16 changes: 8 additions & 8 deletions dtp/biows.pas
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ destructor TWikiSearch.Destroy;
inherited Destroy;
end;

(*function TWikiSearch.Snippet(const searchStr: string): string;
function TWikiSearch.Snippet(const searchStr: string): string;
var
JsonData: TJsonData;
Client: TFPHttpClient;
Expand All @@ -346,9 +346,9 @@ destructor TWikiSearch.Destroy;
JsonData.Free;
Client.Free;
end;
end;*)
end;

function TWikiSearch.Snippet(const searchStr: string): string;
(*function TWikiSearch.Snippet(const searchStr: string): string;
var
JsonData: TJsonData;
queryStr: string;
Expand All @@ -374,9 +374,9 @@ function TWikiSearch.Snippet(const searchStr: string): string;
JsonData.Free;
Client.Free;
end;
end;
end;*)

(*{ Search images from Wikimedia Commons }
{ Search images from Wikimedia Commons }
function TWikiSearch.Images(const searchStr: string; limit: integer = 10): TStringList;
var
JsonData, JsonItem, JsonItems: TJsonData;
Expand Down Expand Up @@ -412,9 +412,9 @@ function TWikiSearch.Images(const searchStr: string; limit: integer = 10): TStri
JsonData.Free;
Client.Free;
end;
end; *)
end;

function TWikiSearch.Images(const searchStr: string; limit: integer = 10): TStringList;
(*function TWikiSearch.Images(const searchStr: string; limit: integer = 10): TStringList;
var
JsonData, JsonItem, JsonItems: TJsonData;
i, Count: integer;
Expand Down Expand Up @@ -454,7 +454,7 @@ function TWikiSearch.Images(const searchStr: string; limit: integer = 10): TStri
JsonData.Free;
Client.Free;
end;
end;
end;*)

{ TFFSearch methods }

Expand Down
39 changes: 23 additions & 16 deletions dtp/main.pas
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@
{ Wikipedia }
{ Version 1.05, 17th Aug 23 - Changed the code for retrieving data from }
{ FiveFilters and NCBI }
{ Version 1.06, 14th Sep 23 - Fixed access violation errors when handling }
{ Wikipedia redirections }
{===============================================================================}

unit main;
Expand Down Expand Up @@ -204,6 +206,7 @@ procedure TMainForm.DoSearch(const queryStr: string);
urlWiki, tagWord, tagHTML, refUrl, imgUrl, taxUrl, urlId, UrlNuc,
urlProt, itemStr, baseMapUrl, pointsUrl: string;
targetDir: string;
s: string;
key, taxId, nucNum, protNum: integer;
i, nrecs: integer;
linkOut, linkIn, imgs, tags, pubs: TStringList;
Expand Down Expand Up @@ -261,21 +264,26 @@ procedure TMainForm.DoSearch(const queryStr: string);
snippet := WikiSearch.Snippet(queryStr);
Application.ProcessMessages;
StatusBar.SimpleText := 'Building keyword list...';
FFSearch := TFFSearch.Create;
tags := FFSearch.termExtract(snippet, 10);
tagHTML := '';
Results.Add('<h3>Text tags</h3>');
for i := 0 to tags.Count - 1 do
if Length(snippet) = 0 then
Results.Add('No text tags')
else
begin
tagWord := tags[i];
tagWord := StringReplace(tagWord, ' ', '&nbsp;', [rfReplaceAll]);
if Length(tagWord) > 0 then
tagHTML := tagHTML +
'<span style=''display:inline;border:1px solid blue;padding:1px;margin:2px;line-height:22px;background-color:rgb(181,213,255);''>'
+ tagWord + ' ' + '</span>';
FFSearch := TFFSearch.Create;
tags := FFSearch.termExtract(snippet, 10);
tagHTML := '';
Results.Add('<h3>Text tags</h3>');
for i := 0 to tags.Count - 1 do
begin
tagWord := tags[i];
tagWord := StringReplace(tagWord, ' ', '&nbsp;', [rfReplaceAll]);
if Length(tagWord) > 0 then
tagHTML := tagHTML +
'<span style=''display:inline;border:1px solid blue;padding:1px;margin:2px;line-height:22px;background-color:rgb(181,213,255);''>'
+ tagWord + ' ' + '</span>';
end;
Results.Add(tagHTML);
FFSearch.Destroy;
end;
Results.Add(tagHTML);
FFSearch.Destroy;

urlWiki := 'http://en.wikipedia.org/wiki/' +
StringReplace(queryStr, ' ', '_', [rfReplaceAll]);
Expand Down Expand Up @@ -351,9 +359,8 @@ 'https://api.gbif.org/v2/map/occurrence/density/0/0/[email protected]?style=classic
DeleteFile(targetDir + 'points.png');
taxUrl := '<a href=http://gbif.org/species/' + IntToStr(key) + '>';
Results.Add('<p>' + taxUrl + IntToStr(nrecs) + ' record(s)</a></p>');
Results.Add(taxUrl +
'<img src="./pictures/' + IntToStr(key) + '.png"' +
' height="56%" width="56%" border=1/></a>');
Results.Add(taxUrl + '<img src="./pictures/' + IntToStr(key) +
'.png"' + ' height="56%" width="56%" border=1/></a>');
end;

Application.ProcessMessages;
Expand Down

0 comments on commit d2f2530

Please sign in to comment.