anchor.diff:      end
       else
       begin
  -      if I >= 1 then
  +      if I > 1 then
         begin
           Dest := System.Copy(S, I, Length(S) - I + 1); {local destination}
           S := System.Copy(S, 1, I - 1); {the file name}
  
positive.code: 
  procedure THtmlViewer.LoadStream(const URL: ThtString; AStream: TStream; ft: ThtmlFileType);
  var
    OldCursor: TCursor;
    SaveOnImageRequest: TGetImageEvent;
  begin
    if (vsProcessing in FViewerState) or not Assigned(AStream) then
      Exit;
    SetProcessing(True);
    OldCursor := Screen.Cursor;
    Screen.Cursor := crHourGlass;
    FRefreshDelay := 0;
    Include(FViewerState, vsDontDraw);
    try
      FSectionList.ProgressStart := 75;
      htProgressInit;
  
negative.code:     else
        ParseText(Self, FDocument);
      CheckVisitedLinks;
      if not PositionTo(Dest) and ((FCurrentFile = '') or (FCurrentFile <> OldFile)) then
      begin
        {if neither destination specified nor same file, move to top}
        ScrollTo(0);
        HScrollBar.Position := 0;
      end;
      PaintPanel.Invalidate;
    finally
      htProgressEnd;
  