diff --git a/src/com/fsck/k9/mail/store/WebDavStore.java b/src/com/fsck/k9/mail/store/WebDavStore.java index a0ecb5085..67c909e8d 100644 --- a/src/com/fsck/k9/mail/store/WebDavStore.java +++ b/src/com/fsck/k9/mail/store/WebDavStore.java @@ -2060,12 +2060,12 @@ public class WebDavStore extends Store { public class DataSet { private HashMap> mData = new HashMap>(); // private HashMap mLostData = new HashMap(); - private String mUid = ""; + private StringBuilder mUid = new StringBuilder(); private HashMap mTempData = new HashMap(); public void addValue(String value, String tagName) { if (tagName.equals("uid")) { - mUid = value; + mUid.append(value); } if (mTempData.containsKey(tagName)) { @@ -2076,9 +2076,10 @@ public class WebDavStore extends Store { } public void finish() { - if (mUid != null && + String uid = mUid.toString(); + if (!uid.equals("") && mTempData != null) { - mData.put(mUid, mTempData); + mData.put(uid, mTempData); } else if (mTempData != null) { /* * Lost Data are for requests that don't include a message UID. These requests should only have a depth @@ -2086,7 +2087,7 @@ public class WebDavStore extends Store { */ } - mUid = ""; + mUid = new StringBuilder(); mTempData = new HashMap(); }