Fix for NPE bugs when saving a filter

pull/14/head
Tim Su 15 years ago
parent de51220f67
commit c18d2f0aa9

@ -95,13 +95,9 @@ public class SavedFilter {
CriterionInstance item = adapter.getItem(i); CriterionInstance item = adapter.getItem(i);
// criterion|entry|text|type|sql // criterion|entry|text|type|sql
values.append(item.criterion.identifier.replace(AndroidUtilities.SERIALIZATION_SEPARATOR, values.append(escape(item.criterion.identifier)).append(AndroidUtilities.SERIALIZATION_SEPARATOR);
AndroidUtilities.SEPARATOR_ESCAPE)).append(AndroidUtilities.SERIALIZATION_SEPARATOR); values.append(escape(item.getValueFromCriterion())).append(AndroidUtilities.SERIALIZATION_SEPARATOR);
values.append(item.getValueFromCriterion().replace(AndroidUtilities.SERIALIZATION_SEPARATOR, values.append(escape(item.criterion.text)).append(AndroidUtilities.SERIALIZATION_SEPARATOR);
AndroidUtilities.SEPARATOR_ESCAPE));
values.append(AndroidUtilities.SERIALIZATION_SEPARATOR);
values.append(item.criterion.text.replace(AndroidUtilities.SERIALIZATION_SEPARATOR,
AndroidUtilities.SEPARATOR_ESCAPE)).append(AndroidUtilities.SERIALIZATION_SEPARATOR);
values.append(item.type).append(AndroidUtilities.SERIALIZATION_SEPARATOR); values.append(item.type).append(AndroidUtilities.SERIALIZATION_SEPARATOR);
if(item.criterion.sql != null) if(item.criterion.sql != null)
values.append(item.criterion.sql); values.append(item.criterion.sql);
@ -111,6 +107,13 @@ public class SavedFilter {
return values.toString(); return values.toString();
} }
private static String escape(String item) {
if(item == null)
return ""; //$NON-NLS-1$
return item.replace(AndroidUtilities.SERIALIZATION_SEPARATOR,
AndroidUtilities.SEPARATOR_ESCAPE);
}
/** /**
* Read filter from store * Read filter from store
* @param savedFilter * @param savedFilter

Loading…
Cancel
Save