• R/O
  • HTTP
  • SSH
  • HTTPS

gikonavi: Commit


Commit MetaInfo

Revisionf20e5135edb6dd0d3c4a1c7bc887b62e761191f0 (tree)
Time2015-02-07 01:46:14
Authorzako <zako@user...>
Commiterzako

Log Message

・板一覧更新の処理メッセージを追加
・ダウンロードデータの展開処理で不正の可能性のあるコードを見直し

Change Summary

Incremental Difference

--- a/GikoSystem.pas
+++ b/GikoSystem.pas
@@ -1558,7 +1558,7 @@ begin
15581558 cnt := ResStream.Read(buf, BUF_SIZE);
15591559 if cnt > 0 then
15601560 GZipStream.Write(buf, BUF_SIZE);
1561- until cnt = 0;
1561+ until cnt <= 0;
15621562 finally
15631563 GZipStream.Free;
15641564 end;
@@ -1569,19 +1569,22 @@ begin
15691569 cnt := ResStream.Read(buf, BUF_SIZE);
15701570 if cnt > 0 then
15711571 TextStream.Write(buf, BUF_SIZE);
1572- until cnt = 0;
1572+ until cnt <= 0;
15731573 end;
15741574
15751575 //NULL文字を"*"にする
15761576 s := TextStream.DataString;
15771577 i := Length(s);
1578- ln := i;
1579- while (i > 0) and (s[i] = #0) do
1580- Dec(i);
1581- Delete(s, i + 1, ln - i);
1578+ if (i > 0) then begin
1579+ ln := i;
1580+ while (i > 0) and (s[i] = #0) do
1581+ Dec(i);
1582+ if (ln > i) then
1583+ Delete(s, i + 1, ln - i);
1584+ end;
15821585
15831586 i := Pos(#0, s);
1584- while i <> 0 do begin
1587+ while i > 0 do begin
15851588 s[i] := '*';
15861589 i := Pos(#0, s);
15871590 end;
--- a/NewBoard.pas
+++ b/NewBoard.pas
@@ -145,8 +145,10 @@ begin
145145 finally
146146 IdAntiFreeze.Active := False;
147147 end;
148- Result.FContent := GikoSys.GzipDecompress(Stream, Indy.Response.ContentEncoding);
149148 MessageMemo.Lines.Add('ダウンロードが完了しました');
149+ MessageMemo.Lines.Add('データを展開します:' + IntToStr(Stream.Size) + 'Byte/' + Indy.Response.ContentEncoding);
150+ Result.FContent := GikoSys.GzipDecompress(Stream, Indy.Response.ContentEncoding);
151+ MessageMemo.Lines.Add('データ展開が完了しました');
150152 except
151153 on E: EIdConnectException do begin
152154 MessageMemo.Lines.Add('');
@@ -159,7 +161,7 @@ begin
159161 if FAbort then
160162 MessageMemo.Lines.Add('ダウンロードを中断しました')
161163 else begin
162- MessageMemo.Lines.Add('ダウンロードが失敗しました');
164+ MessageMemo.Lines.Add('板一覧の取得に失敗しました');
163165 MessageMemo.Lines.Add('ResponseCode: ' + IntToStr(Indy.ResponseCode));
164166 MessageMemo.Lines.Add('Message: ' + E.Message);
165167 MessageMemo.Lines.Add('------------------------');
Binary files a/gikoNavi.res and b/gikoNavi.res differ
Show on old repository browser