anchor.diff:      Item.LoadFromStream(FStream);
       except {!!.05 [ 800130 ] ZIP - Potential Memory Leak }
         Item.Free;
  -      Item := nil;
         raise;
       end;
       if IsExecutable then
  
positive.code:         {!!! write spanning signature here?}
        end
        else
          FStream := TAbSpanStream.Create(FArchiveName,
            fmOpenWrite or fmShareDenyWrite, mtLocal,
              FSpanningThreshold);
  
        try
          TAbSpanStream(FStream).OnRequestImage :=
            DoSpanningMediaRequest;
          TAbSpanStream(FStream).OnArchiveProgress := DoArchiveSaveProgress; {!!.04}
  //        TAbSpanStream(FStream).SpanNumber := SCurrentImage;              {!!.01}
  
          FStream.Size := 0;
          { copy temporary archive to the stream }
          if FStream.Position <> 0 then
            FStream.Position := 0;
          TAbSpanStream(FStream).ArchiveTotalSize := NewStream.Size;     {!!.04}
          FStream.CopyFrom(NewStream, NewStream.Size);
        except
          raise EAbBadStream.Create;
  
negative.code:     DoArchiveProgress( 100, Abort );
    finally {NewStream}
      NewStream.Free;
   //   FStream.Free;
    end;
  end;
  { -------------------------------------------------------------------------- }
  