Language: Java
Label: vulnerable
CWE: CWE-502 \u2014 Deserialization of Untrusted Data
The product deserializes untrusted data without sufficiently verifying that the resulting data will be valid.

Code:
	public void readData(LPDataInput input) throws IOException {
		for (int i = 0; i < iconIndexes.length; i++) {
			int icon = input.readByte();
			if (iconIndexes[i] != icon) {
				iconIndexes[i] = icon;
				dirty = true;
			}
		}
		textureIndex = input.readInt();
		isRouted = input.readBoolean();
		isRoutedInDir = input.readBooleanArray();
		isSubPowerInDir = input.readBooleanArray();
		hasPowerUpgrade = input.readBoolean();
		hasPower = input.readBoolean();
		isFluid = input.readBoolean();
		pointedOrientation = input.readForgeDirection();
	}