KDev3 SVNFileInfoPovider::status

dukju ahn dukjuahn at gmail.com
Sun Apr 22 19:22:36 UTC 2007


2007/4/20, Andreas Pakulat <apaku at gmx.de>:
> On 20.04.07 09:37:39, dukju ahn wrote:
> > 2007/4/18, Andreas Pakulat <apaku at gmx.de>:
> > Then what caused the NetAccess::synchronousRun() returns immediatly??
> >
> > First see the attached logfile.
> > See line 197. synchronousRun() about to be started.
> > But right after BlockingProcess calls exit_loop().
> > And see line 205. synchronousRun() finishes __right after__ the
> > BlockingKProcess calls exit_loop()
> > And see line 208. the kio_svnProtocol starts to run now.
> > Then see line 242. The BlockingKProcess exits from its loop, with timeout.
> > This BlockingKProcess instance was created in line 165.
> >
> > Note that NetAccess::synchronousRun() also uses the same
> > qApp->enter_loop(), exit_loop() to implement blocking.
>
> Ok, this is going to be a problem. We can't solve this, except removing
> BlockingKProcess, which will cause severe other problems (like broken
> QMake Manager). Except if Andras sees a way to make this work (he wrote
> BlockingKProcess).
>
> I think we should rather look again into making it asynchronously. I'll
> try to have a look this weekend, but I can't promise anything (my
> grandmother is celebrating 70th birthday tomorrow) so if somebody else
> has the time please don't hesitate.

I've found how to request asynchronously whenever the listview
is expanded. Attached is the patch, though incomplete and
still has some problem.
This will serve as a minimum clue. Not committed yet.

However, I've found out that asynchronous request whenever the
user clicks directory is very annoying.
1. It will ask svn password when passwords are required. Not
 all users want to save password to his machine.
2. Whenever I click the directory, svn job progress dialog is displayed.
 What is worse, if we click directory 3 times than the 3 progress
 dialogs are displayed.

For the above reasons, I suggest to keep current method which
retrieves vcs infos for
1. only the _local-modifications_
2. _synchronous_
3. and non-recursive
-------------- next part --------------
A non-text attachment was scrubbed...
Name: asyncvcs.diff
Type: text/x-diff
Size: 3029 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20070422/ae3b7b1a/attachment-0001.bin>


More information about the KDevelop-devel mailing list