dedicated to DennisBergkamp

i tried to create a small workaround for the problem, but because i don't get the same error as you, could you try it, please?
This commit is contained in:
jendave
2011-08-06 02:44:39 +00:00
parent 00f92575d8
commit 3757bf5fe9
8 changed files with 78 additions and 28 deletions

1
.gitattributes vendored
View File

@@ -198,6 +198,7 @@ src/forge/Time.java svneol=native#text/plain
src/forge/UndoCommand.java svneol=native#text/plain
src/forge/Wait.java svneol=native#text/plain
src/forge/WinLose.java svneol=native#text/plain
src/forge/_ObjectInputStream.java svneol=native#text/plain
src/forge/error/ErrorViewer.java svneol=native#text/plain
src/forge/error/ExceptionHandler.java -text svneol=native#text/plain
src/forge/gui/ForgeAction.java svneol=native#text/plain

View File

@@ -1,9 +1,7 @@
package forge;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
@@ -39,7 +37,7 @@ public class DeckIO {
//DeckIO io = new DeckIO("booster-decks");
// io.writeBoosterDeck(deck);
// io.close();
// io.deleteBoosterDeck("0");
// System.out.println(io.getBoosterDecks().keySet().size());
// io.close();
@@ -168,7 +166,7 @@ public class DeckIO {
//~
if(!file.exists()) return;
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
ObjectInputStream in = new _ObjectInputStream(new FileInputStream(file));
deckList = (ArrayList<Deck>) in.readObject();
boosterMap = (Map<String, Deck[]>) in.readObject();
@@ -183,9 +181,9 @@ public class DeckIO {
private void writeFile() {
try {
//~
if(file == null) {
return;
}
if(file == null) {
return;
}
//~
if(!file.exists()) file.createNewFile();
@@ -201,4 +199,4 @@ public class DeckIO {
throw new RuntimeException("DeckIO : write() error, " + ex.getMessage());
}
}
}//DeckIO
}//DeckIO

View File

@@ -1,4 +1,7 @@
package forge;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
@@ -23,20 +26,20 @@ import forge.error.ErrorViewer;
import forge.properties.ForgeProps;
import forge.properties.NewConstants;
interface DeckDisplay
{
public void updateDisplay(CardList top, CardList bottom);
//top shows available card pool
//if constructed, top shows all cards
//if sealed, top shows 5 booster packs
//if draft, top shows cards that were chosen
public CardList getTop();
//bottom shows cards that the user has chosen for his library
public CardList getBottom();
public void setTitle(String message);
interface DeckDisplay {
public void updateDisplay(CardList top, CardList bottom);
//top shows available card pool
//if constructed, top shows all cards
//if sealed, top shows 5 booster packs
//if draft, top shows cards that were chosen
public CardList getTop();
//bottom shows cards that the user has chosen for his library
public CardList getBottom();
public void setTitle(String message);
}
public class Gui_DeckEditor_Menu extends JMenuBar implements NewConstants {
@@ -326,7 +329,7 @@ public class Gui_DeckEditor_Menu extends JMenuBar implements NewConstants {
Object check = null;
try {
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
ObjectInputStream in = new _ObjectInputStream(new FileInputStream(file));
check = in.readObject();
in.close();
@@ -1057,4 +1060,4 @@ public class Gui_DeckEditor_Menu extends JMenuBar implements NewConstants {
}
});
}//setupMenu()
}
}

View File

@@ -1,4 +1,7 @@
package forge;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
@@ -261,7 +264,7 @@ public class Gui_Quest_DeckEditor_Menu extends JMenuBar {
Object check = null;
try {
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
ObjectInputStream in = new _ObjectInputStream(new FileInputStream(file));
check = in.readObject();
in.close();

View File

@@ -1,4 +1,7 @@
package forge;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
@@ -36,7 +39,7 @@ public class IO {
// Map has unchecked cast
private void readMap() {
try {
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
ObjectInputStream in = new _ObjectInputStream(new FileInputStream(file));
map = (Map<String, Serializable>) in.readObject();
in.close();
} catch(Exception ex) {

View File

@@ -1,4 +1,7 @@
package forge;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
@@ -63,7 +66,7 @@ public class NewIO {
private ObjectInputStream getReader() {
try {
return new ObjectInputStream(new FileInputStream(file));
return new _ObjectInputStream(new FileInputStream(file));
} catch(IOException ex) {
ErrorViewer.showError(ex);
throw new RuntimeException("IO : getReader() - error - " + ex);

View File

@@ -195,7 +195,7 @@ public class QuestData implements NewConstants {
static public QuestData loadData() {
try {
//read file "questData"
ObjectInputStream in = new ObjectInputStream(new FileInputStream(ForgeProps.getFile(QUEST.DATA)));
ObjectInputStream in = new _ObjectInputStream(new FileInputStream(ForgeProps.getFile(QUEST.DATA)));
Object o = in.readObject();
in.close();

View File

@@ -0,0 +1,39 @@
/**
* _ObjectInputStream.java
*
* Created on 29.10.2009
*/
package forge;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
/**
* The class _ObjectInputStream.
*
* @version V0.0 29.10.2009
* @author Clemens Koza
*/
public class _ObjectInputStream extends ObjectInputStream {
public _ObjectInputStream() throws IOException {
super();
enableResolveObject(true);
}
public _ObjectInputStream(InputStream is) throws IOException {
super(is);
enableResolveObject(true);
}
@Override
protected Object resolveObject(Object obj) throws IOException {
Class<?> c = obj.getClass().getComponentType();
if(c != null && "Deck".equals(c.getName())) {
return new Deck[((Object[]) obj).length];
} else return obj;
}
}