I don't like really your correction.
If we remove the refreshLocal here, it means we will need to refresh
after each svn command we do (and as we don't know what to refresh we
will do a large refresh).
I know this is what we do in some cases (because there are some bugs in
the events dispatching probably in OperationManager) but we should
correct these bugs instead.
In fact, it seems there were some failures because we should use :
if (kind == SVNNodeKind.UNKNOWN) { // delete, revert
IPath pathEntries =
pathEclipse.removeLastSegments(1).append(SVNConstants.SVN_DIRNAME);
IResource entries =
workspaceRoot.getContainerForLocation(pathEntries);
changedResources.add(entries);
}
instead of
if (kind == SVNNodeKind.UNKNOWN) { // delete, revert
IPath pathEntries =
pathEclipse.removeLastSegments(1).append(SVNConstants.SVN_DIRNAME);
IResource entries = workspaceRoot.getFolder(pathEntries);
changedResources.add(entries);
}
Cédric
>looks like the refreshlocal call i merged into operation manager a
>while ago is causing the problem. basically it's pushing an invalid
>rule onto the rule stack in the midst of ending an svn operation.
>
>i should really stop trying to hack on this thing :)
>
>On Thu, 26 Aug 2004 22:38:31 +0100, Cédric Chabanois
><cchabanois@no-log.org> wrote:
>
>
>>I have the same problem on windows but I did not find why yet.
>>
>>Cédric
>>
>>
>>
>>
>>
>>>Hello,
>>>
>>>There seem to be 2 failures on linux, both of which seem to have the
>>>same problem. can anyone shed some light on this? those 2 rules don't
>>>match, but what is setting these rules in the move/delete hook?
>>>
>>>java.lang.IllegalArgumentException: Attempted to beginRule:
>>>F/home/mml/junit-workbench-workspace/testProject/src, does not match
>>>outer scope rule: F/testProject/src
>>> at org.eclipse.core.internal.runtime.Assert.isLegal(Assert.java:58)
>>> at org.eclipse.core.internal.jobs.ThreadJob.illegalPush(ThreadJob.java:106)
>>> at org.eclipse.core.internal.jobs.ThreadJob.push(ThreadJob.java:200)
>>> at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:58)
>>> at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:170)
>>> at org.eclipse.core.internal.resources.WorkManager.checkIn(WorkManager.java:95)
>>> at org.eclipse.core.internal.resources.Workspace.prepareOperation(Workspace.java:1628)
>>> at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1218)
>>> at org.tigris.subversion.subclipse.core.client.OperationManager.endOperation(OperationManager.java:89)
>>> at org.tigris.subversion.subclipse.core.resources.SVNMoveDeleteHook.moveFolder(SVNMoveDeleteHook.java:251)
>>> at org.eclipse.team.internal.core.MoveDeleteManager.moveFolder(MoveDeleteManager.java:100)
>>> at org.eclipse.core.internal.resources.Resource.unprotectedMove(Resource.java:1551)
>>> at org.eclipse.core.internal.resources.Resource.move(Resource.java:1182)
>>> at org.eclipse.core.internal.resources.Resource.move(Resource.java:1142)
>>> at org.tigris.subversion.subclipse.test.core.RefactorTest.testPackageRenameWithForce(RefactorTest.java:118)
>>>
>>>
>>>
>>>
>>>
>>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: dev-unsubscribe@subclipse.tigris.org
>>For additional commands, e-mail: dev-help@subclipse.tigris.org
>>
>>
>>
>>
>
>
>
>
Received on Fri Aug 27 08:32:19 2004