Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [platform-core-dev] A question regarding the BuildManager


Hi Thomas,

That was a bug that was introduced shortly before M6. It has since been fixed:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=182781

John




Thomas Hallgren <thomas@xxxxxxx>
Sent by: platform-core-dev-bounces@xxxxxxxxxxx

18/04/2007 01:49 PM

Please respond to
"Eclipse Platform Core component developers list."        <platform-core-dev@xxxxxxxxxxx>

To
platform-core-dev@xxxxxxxxxxx
cc
Subject
[platform-core-dev] A question regarding the BuildManager





Hi,
I had some problems with one of my builders not kicking in so I did some
debugging. I ended up in class
org.eclipse.core.internal.events.BuildManager and found my problem. I
want to ask here first if this is intentional or if it's a bug. But from
the looks of it, the build manager will simply skip all builders
following a builder that isn't triggered, even if the subsequent
builders indeed would be triggered. Is this the way it's supposed to work?

I'm using Eclipse 3.3M6 and the source in question looks like this
(starting at line 186). Note the return statement after the
if(!command.isBuilding(trigger)):

   protected void basicBuild(IProject project, int trigger, ICommand[]
commands, MultiStatus status, IProgressMonitor monitor) {
       try {
           for (int i = 0; i < commands.length; i++) {
               checkCanceled(trigger, monitor);
               BuildCommand command = (BuildCommand) commands[i];
               //don't build if this builder doesn't respond to the
given trigger
               if (!command.isBuilding(trigger)) {
                   monitor.worked(1);
                   return;
               }
               IProgressMonitor sub = Policy.subMonitorFor(monitor, 1);
               IncrementalProjectBuilder builder = getBuilder(project,
command, i, status);
               if (builder != null)
                   basicBuild(trigger, builder,
command.getArguments(false), status, sub);
           }
       } catch (CoreException e) {
           status.add(e.getStatus());
       }
   }

Kind regards,
Thomas Hallgren

_______________________________________________
platform-core-dev mailing list
platform-core-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-core-dev


Back to the top