anchor.diff:    if FStream is TAbSpanStream then begin
       if TAbSpanStream(FStream).SpanMode = smWriting then begin
         MediaType := TAbSpanStream(FStream).MediaType;
  +      if FOwnsStream then begin //  914427 
         FStream.Free;
         FStream := TAbSpanstream.Create(ArchiveName, fmOpenRead or fmShareDenyWrite,
           MediaType, FSpanningThreshold);
  +      end;
         TAbSpanStream(FStream).OnRequestImage := DoSpanningMediaRequest;
         TAbSpanStream(FStream).OnArchiveProgress := DoArchiveSaveProgress; {!!.04}
       end;
  
positive.code: 
    { need new stream for writing }
    MediaType := TAbSpanStream(FStream).MediaType;
    FStream.Free;
    FStream := TAbSpanstream.Create(ArchiveName, fmOpenWrite or fmShareDenyWrite,
      MediaType, FSpanningThreshold);
  
    if Spanning then begin
      { set up event handler for new disk}
  
negative.code:     NewStream.Position := 0;
      if (FStream is TMemoryStream) then
        TMemoryStream(FStream).LoadFromStream(NewStream)
      else if FOwnsStream then  // 914427 
         FStream.CopyFrom(NewStream,0)  
      else begin
        { need new stream to write }
        FStream.Free;
  