Control: tags -1 patch Please find attached a patch that fixes the issue. The recent update of libcommons-cli-java to version 1.3.1 introduced some changes in OptionsBuilder.java which caused this FreeCol runtime error. In general Freecol should move away from OptionsBuilder because this class is deprecated. I changed the type from File to Class, and so far the game works again.
Markus
diff -Nru freecol-0.10.7+dfsg/debian/changelog freecol-0.10.7+dfsg/debian/changelog --- freecol-0.10.7+dfsg/debian/changelog 2014-12-01 21:31:35.000000000 +0100 +++ freecol-0.10.7+dfsg/debian/changelog 2015-09-12 00:58:29.000000000 +0200 @@ -1,3 +1,12 @@ +freecol (0.10.7+dfsg-4) unstable; urgency=medium + + * Team upload. + * Add commons-cli-1.3.patch and fix java.lang.ClassCastException due to + deprecated and different methods in libcommons-cli-java version 1.3.1. + Thanks to Emmanuel Fleury for the report. (Closes: #798699) + + -- Markus Koschany <a...@gambaru.de> Sat, 12 Sep 2015 00:54:21 +0200 + freecol (0.10.7+dfsg-3) unstable; urgency=medium * Disable intro video to avoid hanging at startup (closes: #771700) diff -Nru freecol-0.10.7+dfsg/debian/patches/commons-cli-1.3.patch freecol-0.10.7+dfsg/debian/patches/commons-cli-1.3.patch --- freecol-0.10.7+dfsg/debian/patches/commons-cli-1.3.patch 1970-01-01 01:00:00.000000000 +0100 +++ freecol-0.10.7+dfsg/debian/patches/commons-cli-1.3.patch 2015-09-12 00:58:29.000000000 +0200 @@ -0,0 +1,29 @@ +From: Markus Koschany <a...@gambaru.de> +Date: Sat, 12 Sep 2015 00:53:37 +0200 +Subject: commons cli 1.3 + +--- + src/net/sf/freecol/FreeCol.java | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/net/sf/freecol/FreeCol.java b/src/net/sf/freecol/FreeCol.java +index 3cdf52e..a973298 100644 +--- a/src/net/sf/freecol/FreeCol.java ++++ b/src/net/sf/freecol/FreeCol.java +@@ -299,6 +299,7 @@ public final class FreeCol { + private static void handleArgs(String[] args) { + // create the command line parser + CommandLineParser parser = new PosixParser(); ++ final Class dummy = null; + + /** + * Ugly hack: try to determine language first, so that usage, +@@ -338,7 +339,7 @@ public final class FreeCol { + options.addOption(OptionBuilder.withLongOpt("home-directory") + .withDescription(Messages.message("cli.home-directory")) + .withArgName(Messages.message("cli.arg.directory")) +- .withType(new File("dummy")) ++ .withType(dummy) + .hasArg() + .create()); + options.addOption(OptionBuilder.withLongOpt("log-console") diff -Nru freecol-0.10.7+dfsg/debian/patches/series freecol-0.10.7+dfsg/debian/patches/series --- freecol-0.10.7+dfsg/debian/patches/series 2013-08-25 13:14:05.000000000 +0200 +++ freecol-0.10.7+dfsg/debian/patches/series 2015-09-12 00:58:29.000000000 +0200 @@ -1,2 +1,3 @@ 10-fix-jar-path.diff 40-manpage.diff +commons-cli-1.3.patch
signature.asc
Description: OpenPGP digital signature