Problem which VCS plugins when closing a project
Jens Dagerbo
jens.dagerbo at swipnet.se
Wed Jan 3 18:09:40 UTC 2007
Hi,
I finally got around to looking at this and committed a fix that gives us the
expected behaviour.
A while back we decided VCS plugins should be mutually exclusive and decided
this would be implemented by a manager (the VCSManager plugin) that decided
which VCS plugin to load. This works rather well.
However, as you noticed, the VCS Manager didn't do too well with unloading the
plugin, as it did this at the wrong moment, keeping the plugin from getting
the projectClosed() signal.
(The good solution to this problem would be to introduce a signal that is sent
_after_ the project is unloaded (projectClosed() is sent before,
counter-intuitively) and have the VCSManager do its work there.)
Thanks for pointing out the problem and the (temporary) patch! :)
// jens
On Friday 08 December 2006 23:57, Robert Gruber wrote:
> Hello,
>
> I truly think this should be fixed for KDevelop 3.4
>
> As told, I can only offer a workaround. If nobody has a better solution and
> there are no objections against it, I would like to commit this workaround
> in order to make the cvs part fully functionable for KDevelop-3.4. But we
> should bare in mind to fix this in KDevelop4.
>
>
> Regards, Robert
>
>
> -------- Original-Nachricht --------
> Datum: Sun, 03 Dec 2006 19:44:41 +0100
> Von: "Robert Gruber" <R.Gruber at gmx.net>
> An: kdevelop-devel at barney.cs.uni-potsdam.de
> Betreff: Problem which VCS plugins when closing a project
>
> > Unfortunalty I have no idea how to fix this :-(
> >
> > Best regards,
> > Robert
> >
> >
> > BTW:
> > For my local copy I've added a call to slotProjectClosed() to
> > CvsServicePart's destructor. That way the settings will be stored even
> > if the plugin gets removed before the signal reaches it.
> >
> > ------ cut -------
> > Index: cvspart.cpp
> > ===================================================================
> > --- cvspart.cpp (Revision 610182)
> > +++ cvspart.cpp (Arbeitskopie)
> > @@ -106,6 +106,8 @@
> >
> > CvsServicePart::~CvsServicePart()
> > {
> > + slotProjectClosed();
> > +
> > delete m_cvsConfigurationForm;
> > delete m_impl;
> > }
> > ------ cut -------
More information about the KDevelop-devel
mailing list