[212075] Save corruption
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModulePublishInfo.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModulePublishInfo.java
index 47d188c..893e076 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModulePublishInfo.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModulePublishInfo.java
@@ -168,7 +168,7 @@
 		Trace.trace(Trace.FINEST, "Loading module publish info");
 		
 		moduleId = in.readUTF();
-		byte b = in.readByte();
+		byte b = in.readByte(); // 8?
 		
 		if ((b & 1) != 0)
 			name = in.readUTF();
@@ -188,6 +188,8 @@
 
 	private IModuleResource[] loadResource(DataInput in, IPath path) throws IOException {
 		int size = in.readInt();
+		if (size > 1000)
+			size = 1000;
 		IModuleResource[] resources2 = new IModuleResource[size];
 		
 		for (int i = 0; i < size; i++) {
@@ -234,7 +236,7 @@
 		if (resources2 == null)
 			return;
 		int size = resources2.length;
-		out.writeInt(0);
+		out.writeInt(size);
 		for (int i = 0; i < size; i++) {
 			if (resources2[i] instanceof IModuleFile) {
 				IModuleFile file = (IModuleFile) resources2[i];