setup.exe rebase patch

Jason Tishler jason@tishler.net
Thu Feb 28 11:56:00 GMT 2002


Rob,

On Fri, Mar 01, 2002 at 02:22:56AM +1100, Robert Collins wrote:
> > -----Original Message-----
> > From: Jason Tishler [mailto:jason@tishler.net] 
> > > 0) Check that it hasn't been rebased already.
> > 
> > What is the purpose of the above?  I already rebase DLLs into 
> > their previous space during reinstalls, if they still fit.
> 
> Efficiency, it seemed obvious to not rebase already rebased .dll's. I
> recall you saying that it was fast, but I don't see it scaling to 100's
> of .dll's - which we are heading towards.

Don't worry, I'm no longer advocating rebasing everything over and
over again.  However, I think that we must re-rebase a DLL during a
re-install for the following reasons:

    o determine whether or not the image size has changed (and act
      appropriately)
    o actually rebase the DLL after copying out of the archive

So, I already check that the DLL has been rebased before, but I will
still rebase this particular DLL (but not all DLLs currently on the
system).  I don't see anyway around this and feel that this is as
efficient as possible.

> > Nevertheless, if you feel strongly, then I will change my perspective.
> 
> It's not about feeling. It's about understanding. I agree that having
> the serialisation in the classes themselves is not great, as things get
> baggy. I hope that you agree that having external classes that require
> access to private data (ie config_file_writer) for serialisation is
> also not great because it breaks encapsulation (friends don't always
> break encapsulation, but in this case, IMO they do). The Memento class
> is designed to provide a solution to both issues.

Thanks for pointing me to the Memento pattern.  I will investigate it
and try to come up with a better solution.

Thanks,
Jason



More information about the Cygwin-apps mailing list