Multiple "bugs" in Indy 10

Giganews Newsgroups
Subject: Multiple "bugs" in Indy 10
Posted by:  Jan Bakuwel (jan.bakuwelNOSP…@int.greenpeace.org)
Date: Mon, 17 Jan 2005

Hoi all,

Indy 10 assumes that "Complete Boolean Evaluation" is disabled.
However, in my projects it is enabled by default - to prevent myself & others from being
lazy :-). This results in many range check exceptions, at runtime of course. I started
to make changes to the code but there seem to be quite a few :-/ of lines like:

  // Original code:
  //if (LLine <> '') and (LLine[1] = '.') then begin            {do not localize}
  //  Delete(LLine, 1, 1);
  //end;

  // Modified code:
  if (LLine <> '') then
  begin
    if (LLine[1] = '.') then Delete(LLine, 1, 1);            {do not localize}
  end;

It maybe something the Indy team can consider for the new release. Although it is
possible to use compiler directives, it won't really solve the problem as there is,
to my knowledge, no way to determine the current setting of that compiler option
before disabling it for the Indy code (there's only {$B+} and {$B-}....), then only
re-enabling it if it was enabled. Using compiler directives may break other code...

thanks & keep up the good work!
Jan

Replies