-
Дмитрий Белькевич (18.08.10 02:10) [20]Вообще, это я писал :) Сайт сообщение не добавлял - думал из-за ника, поменял - оказалось из-за части сообщения.
Амбула.
Буду скоро на инди ругаться матом :)
procedure TIdLogBase.Receive(var ABuffer: TIdBytes);
....
s := BytesToStringRaw(ABuffer);
Инди криво конвертят TIdBytes > string, часть данных заменяется на пробелы, я тут уже весь свой код перетряс, ища, что не так.
Кака, короче, эта индя. Перелазить на что-то другое не хочу, придётся править. Как бы еще им изменения засабмитить... -
Anatoly Podgoretsky © (18.08.10 10:58) [21]> Дмитрий Белькевич (18.08.2010 02:10:20) [20]
Ты неправильной стороной ешь бутерброд, ругаться надо начинать до
использования. -
Симулятор (18.08.10 12:47) [22]Сильно боюсь, что другое только хуже.
-
Дмитрий Белькевич (18.08.10 12:47) [23]Блин, вот уже и на сайте баги - то под одним ником пишет, то под другим... фиг поймёшь.
-
Дмитрий Белькевич (18.08.10 13:59) [24]Поправил, может кому интересно будет:
procedure TIdLogBase.Receive(var ABuffer: TIdBytes);
var
s: string;
LMsg: string;
begin
if FActive then begin
inherited Receive(ABuffer);
LMsg := '';
if LogTime then begin
LMsg := DateTimeToStr(Now);
end;
//s := BytesToStringRaw(ABuffer);
s := TIdTextEncoding.Default.GetString(ABuffer);
if FReplaceCRLF then begin
s := ReplaceCR(S);
end;
LogReceivedData(LMsg, s);
end;
end;
procedure TIdLogStream.LogReceivedData(const AText, AData: string);
begin
if FReceiveStream <> nil then begin
WriteStringToStream(FReceiveStream, AData, TIdTextEncoding.Default);
end;
end;
procedure TIdLogStream.LogSentData(const AText, AData: string);
begin
if FSendStream <> nil then begin
WriteStringToStream(FSendStream, AData, TIdTextEncoding.Default);
end;
end; -
Anatoly Podgoretsky © (19.08.10 10:08) [25]> Симулятор (18.08.2010 12:47:22) [22]
После Инди, не смеши. -
Anatoly Podgoretsky © (19.08.10 10:09) [26]> Дмитрий Белькевич (18.08.2010 12:47:23) [23]
Не пиши под разными никами, или меняй их до поста.