X-Git-Url: https://gitweb.fperrin.net/?a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2Fparser%2FEnWiktionaryXmlParser.java;h=0fa3c92a59e0ae87a319da705b59c44f658dac9f;hb=d4f4b7eed6992cf3527a8d5ef9460c223f4644a4;hp=f5018ed0a792ff7ec042f5d987fb4ca0591a3c92;hpb=6e550bafb1cb6a916d94c15ded707c865678e5b4;p=DictionaryPC.git diff --git a/src/com/hughes/android/dictionary/parser/EnWiktionaryXmlParser.java b/src/com/hughes/android/dictionary/parser/EnWiktionaryXmlParser.java index f5018ed..0fa3c92 100644 --- a/src/com/hughes/android/dictionary/parser/EnWiktionaryXmlParser.java +++ b/src/com/hughes/android/dictionary/parser/EnWiktionaryXmlParser.java @@ -742,7 +742,11 @@ public class EnWiktionaryXmlParser { name.contains("plural of")) { String formName = name; if (name.equals("form of")) { - formName = args.remove(0); + formName = remove(args, 0, null); + } + if (formName == null) { + LOG.warning("Missing form name: " + title); + formName = "form of"; } String baseForm = get(args, 1, ""); if ("".equals(baseForm)) { @@ -753,8 +757,12 @@ public class EnWiktionaryXmlParser { } namedArgs.keySet().removeAll(USELESS_WIKI_ARGS); WikiTokenizer.appendFunction(englishBuilder.append("{"), formName, args, namedArgs).append("}"); - otherIndexBuilder.addEntryWithString(indexedEntry, baseForm, EntryTypeName.WIKTIONARY_BASE_FORM_SINGLE, EntryTypeName.WIKTIONARY_BASE_FORM_MULTI); - + if (baseForm != null) { + otherIndexBuilder.addEntryWithString(indexedEntry, baseForm, EntryTypeName.WIKTIONARY_BASE_FORM_SINGLE, EntryTypeName.WIKTIONARY_BASE_FORM_MULTI); + } else { + // null baseForm happens in Danish. + LOG.warning("Null baseform: " + title); + } } else { namedArgs.keySet().removeAll(USELESS_WIKI_ARGS); if (args.size() == 0 && namedArgs.isEmpty()) {