diff options
5 files changed, 62 insertions, 60 deletions
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOM.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOM.java index 585f2d29898..d286f49a526 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOM.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/PDOM.java @@ -44,6 +44,7 @@ import org.eclipse.cdt.internal.core.pdom.dom.PDOMFile.Finder; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.Platform; import org.eclipse.core.runtime.PlatformObject; import org.eclipse.core.runtime.Status; @@ -56,7 +57,10 @@ public class PDOM extends PlatformObject implements IPDOM, IPDOMResolver, IPDOMWriter { private Database db; - private boolean needSave = true; + + // On Neutrino, we need to save the database to ensure the + // buffer gets written to the file. + private static boolean needSave = Platform.getOS() == Platform.OS_QNX; public static final int VERSION = 11; // 0 - the beginning of it all @@ -418,12 +422,12 @@ public class PDOM extends PlatformObject public void releaseWriteLock() { synchronized (mutex) { // save the database - try { - if (needSave) - needSave = db.save(); - } catch (CoreException e) { - CCorePlugin.log(e); - } + if (needSave) + try { + db.save(); + } catch (CoreException e) { + CCorePlugin.log(e); + } if (lockCount < 0) ++lockCount; mutex.notifyAll(); diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Chunk.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Chunk.java index 6f64831fee2..3a32757839b 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Chunk.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Chunk.java @@ -45,16 +45,17 @@ public class Chunk { } } - public boolean save() throws CoreException { + public void save() throws CoreException { // if we're not memory mapped, write the buffer out to the file if (buffer instanceof MappedByteBuffer) - return false; - try { - db.file.seek(index * Database.CHUNK_SIZE); - db.file.getChannel().write(buffer); - return true; - } catch (IOException e) { - throw new CoreException(new DBStatus(e)); + ((MappedByteBuffer)buffer).force(); + else { + try { + db.file.seek(index * Database.CHUNK_SIZE); + db.file.getChannel().write(buffer); + } catch (IOException e) { + throw new CoreException(new DBStatus(e)); + } } } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java index 210505c90da..c4bdbe7fd99 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/db/Database.java @@ -89,13 +89,10 @@ public class Database { * and need to be saved back to disk. * @throws CoreException */ - public boolean save() throws CoreException { - if (!toc[0].save()) - return false; - for (int i = 1; i < toc.length; ++i) + public void save() throws CoreException { + for (int i = 0; i < toc.length; ++i) if (toc[i] != null) toc[i].save(); - return true; } /** diff --git a/releng/org.eclipse.cdt.releng/build.xml b/releng/org.eclipse.cdt.releng/build.xml index d3ba0f0ee29..9bb90d68ee5 100644 --- a/releng/org.eclipse.cdt.releng/build.xml +++ b/releng/org.eclipse.cdt.releng/build.xml @@ -29,7 +29,7 @@ <property name="messagefile" value="message.in"/> <property name="mailto" value="cdt-test-dev@eclipse.org"/> <property name="remotedir" value="dschaefer@dev.eclipse.org:cdt/builds/${branchVersion}"/> - <property name="eclipseRoot" value=":pserver:anonymous@dev.eclipse.org:/home/eclipse"/> + <property name="eclipseRoot" value=":pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse"/> <property name="baseos" value="${osgi.os}"/> <property name="basews" value="${osgi.ws}"/> <property name="basearch" value="${osgi.arch}"/> diff --git a/releng/org.eclipse.cdt.releng/maps/cdt.map b/releng/org.eclipse.cdt.releng/maps/cdt.map index 939e50521df..78253b9e738 100644 --- a/releng/org.eclipse.cdt.releng/maps/cdt.map +++ b/releng/org.eclipse.cdt.releng/maps/cdt.map @@ -1,57 +1,57 @@ ! Cross platform -plugin@org.eclipse.cdt.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core -plugin@org.eclipse.cdt.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.ui -plugin@org.eclipse.cdt.refactoring=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.refactoring +plugin@org.eclipse.cdt.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core +plugin@org.eclipse.cdt.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.ui +plugin@org.eclipse.cdt.refactoring=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.refactoring -plugin@org.eclipse.cdt.make.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-build/org.eclipse.cdt.make.core -plugin@org.eclipse.cdt.make.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-build/org.eclipse.cdt.make.ui +plugin@org.eclipse.cdt.make.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.make.core +plugin@org.eclipse.cdt.make.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.make.ui -plugin@org.eclipse.cdt.managedbuilder.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-build/org.eclipse.cdt.managedbuilder.core -plugin@org.eclipse.cdt.managedbuilder.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-build/org.eclipse.cdt.managedbuilder.ui -plugin@org.eclipse.cdt.managedbuilder.gnu.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-build/org.eclipse.cdt.managedbuilder.gnu.ui +plugin@org.eclipse.cdt.managedbuilder.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.core +plugin@org.eclipse.cdt.managedbuilder.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.ui +plugin@org.eclipse.cdt.managedbuilder.gnu.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.gnu.ui -plugin@org.eclipse.cdt.debug.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-debug/org.eclipse.cdt.debug.core -plugin@org.eclipse.cdt.debug.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-debug/org.eclipse.cdt.debug.ui +plugin@org.eclipse.cdt.debug.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.debug.core +plugin@org.eclipse.cdt.debug.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.debug.ui -plugin@org.eclipse.cdt.debug.mi.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-debug/org.eclipse.cdt.debug.mi.core -plugin@org.eclipse.cdt.debug.mi.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-debug/org.eclipse.cdt.debug.mi.ui +plugin@org.eclipse.cdt.debug.mi.core=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.debug.mi.core +plugin@org.eclipse.cdt.debug.mi.ui=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.debug.mi.ui -plugin@org.eclipse.cdt.launch=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-launch/org.eclipse.cdt.launch +plugin@org.eclipse.cdt.launch=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.launch -plugin@org.eclipse.cdt.doc.user=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-doc/org.eclipse.cdt.doc.user -plugin@org.eclipse.cdt.doc.isv=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-doc/org.eclipse.cdt.doc.isv +plugin@org.eclipse.cdt.doc.user=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.doc.user +plugin@org.eclipse.cdt.doc.isv=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.doc.isv -plugin@org.eclipse.cdt=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-releng/org.eclipse.cdt -feature@org.eclipse.cdt=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-releng/org.eclipse.cdt-feature +plugin@org.eclipse.cdt=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt +feature@org.eclipse.cdt=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt-feature ! Platform specific -fragment@org.eclipse.cdt.core.aix=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.aix -fragment@org.eclipse.cdt.core.linux=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.linux -fragment@org.eclipse.cdt.core.linux.ia64=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.linux.ia64 -fragment@org.eclipse.cdt.core.linux.ppc=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.linux.ppc -fragment@org.eclipse.cdt.core.linux.x86=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.linux.x86 -fragment@org.eclipse.cdt.core.linux.x86_64=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.linux.x86_64 -fragment@org.eclipse.cdt.core.macosx=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.macosx -fragment@org.eclipse.cdt.core.qnx=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.qnx -fragment@org.eclipse.cdt.core.solaris=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.solaris -fragment@org.eclipse.cdt.core.win32=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.win32 +fragment@org.eclipse.cdt.core.aix=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.aix +fragment@org.eclipse.cdt.core.linux=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.linux +fragment@org.eclipse.cdt.core.linux.ia64=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.linux.ia64 +fragment@org.eclipse.cdt.core.linux.ppc=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.linux.ppc +fragment@org.eclipse.cdt.core.linux.x86=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.linux.x86 +fragment@org.eclipse.cdt.core.linux.x86_64=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.linux.x86_64 +fragment@org.eclipse.cdt.core.macosx=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.macosx +fragment@org.eclipse.cdt.core.qnx=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.qnx +fragment@org.eclipse.cdt.core.solaris=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.solaris +fragment@org.eclipse.cdt.core.win32=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.win32 ! Testing feature -plugin@org.eclipse.cdt.core.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.core.tests -plugin@org.eclipse.cdt.ui.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.ui.tests -plugin@org.eclipse.cdt.refactoring.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-core/org.eclipse.cdt.refactoring.tests -plugin@org.eclipse.cdt.debug.ui.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-debug/org.eclipse.cdt.debug.ui.tests -plugin@org.eclipse.cdt.managedbuilder.core.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-build/org.eclipse.cdt.managedbuilder.core.tests -plugin@org.eclipse.cdt.managedbuilder.ui.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-build/org.eclipse.cdt.managedbuilder.ui.tests -plugin@org.eclipse.cdt.testing=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-releng/org.eclipse.cdt.testing -plugin@org.eclipse.test=HEAD,:pserver:anonymous@dev.eclipse.org:/home/eclipse, -fragment@org.eclipse.ant.optional.junit=HEAD,:pserver:anonymous@dev.eclipse.org:/home/eclipse, -feature@org.eclipse.cdt.testing=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-releng/org.eclipse.cdt.testing-feature +plugin@org.eclipse.cdt.core.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.core.tests +plugin@org.eclipse.cdt.ui.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.ui.tests +plugin@org.eclipse.cdt.refactoring.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.refactoring.tests +plugin@org.eclipse.cdt.debug.ui.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.debug.ui.tests +plugin@org.eclipse.cdt.managedbuilder.core.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.core.tests +plugin@org.eclipse.cdt.managedbuilder.ui.tests=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.managedbuilder.ui.tests +plugin@org.eclipse.cdt.testing=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.testing +plugin@org.eclipse.test=HEAD,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse, +fragment@org.eclipse.ant.optional.junit=HEAD,:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse, +feature@org.eclipse.cdt.testing=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.testing-feature ! SDK Feature -plugin@org.eclipse.cdt.sdk=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-releng/org.eclipse.cdt.sdk -feature@org.eclipse.cdt.sdk=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/home/tools,,org.eclipse.cdt-releng/org.eclipse.cdt.sdk-feature +plugin@org.eclipse.cdt.sdk=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.sdk +feature@org.eclipse.cdt.sdk=@cdtTag@,:pserver:anonymous@dev.eclipse.org:/cvsroot/tools,,org.eclipse.cdt/all/org.eclipse.cdt.sdk-feature |