diff --git a/src/com/fsck/k9/activity/MessageCompose.java b/src/com/fsck/k9/activity/MessageCompose.java index 8d9ad60f7..764ca2a6c 100644 --- a/src/com/fsck/k9/activity/MessageCompose.java +++ b/src/com/fsck/k9/activity/MessageCompose.java @@ -3257,7 +3257,8 @@ public class MessageCompose extends K9Activity implements OnClickListener, OnFoc * creating a new hierarchical dummy Uri object with the query * parameters of the original URI. */ - Uri uri = Uri.parse("foo://bar?" + mailtoUri.getEncodedQuery()); + CaseInsensitiveParamWrapper uri = new CaseInsensitiveParamWrapper( + Uri.parse("foo://bar?" + mailtoUri.getEncodedQuery())); // Read additional recipients from the "to" parameter. List to = uri.getQueryParameters("to"); @@ -3291,6 +3292,24 @@ public class MessageCompose extends K9Activity implements OnClickListener, OnFoc } } + private static class CaseInsensitiveParamWrapper { + private final Uri uri; + + public CaseInsensitiveParamWrapper(Uri uri) { + this.uri = uri; + } + + public List getQueryParameters(String key) { + final List params = new ArrayList(); + for (String paramName : uri.getQueryParameterNames()) { + if (paramName.equalsIgnoreCase(key)) { + params.addAll(uri.getQueryParameters(paramName)); + } + } + return params; + } + } + private class SendMessageTask extends AsyncTask { @Override protected Void doInBackground(Void... params) {