Allow download of contact w/ no name; don't accept empty note

Change-Id: I90058ee6c92853a3765138ca433abd7f62b60c0a
diff --git a/src/com/android/exchange/adapter/ContactsSyncAdapter.java b/src/com/android/exchange/adapter/ContactsSyncAdapter.java
index db28a10..763dbd9 100644
--- a/src/com/android/exchange/adapter/ContactsSyncAdapter.java
+++ b/src/com/android/exchange/adapter/ContactsSyncAdapter.java
@@ -540,7 +540,7 @@
             }
 
             // We must have first name, last name, or company name
-            String name;
+            String name = null;
             if (firstName != null || lastName != null) {
                 if (firstName == null) {
                     name = lastName;
@@ -551,8 +551,6 @@
                 }
             } else if (companyName != null) {
                 name = companyName;
-            } else {
-                return;
             }
 
             ops.addName(entity, prefix, firstName, lastName, middleName, suffix, name,
@@ -1342,6 +1340,19 @@
             if (cv != null && cvCompareString(cv, Note.NOTE, note)) {
                 return;
             }
+
+            // Reject notes with nothing in them.  Often, we get something from Outlook when
+            // nothing was ever entered.  Sigh.
+            int len = note.length();
+            int i = 0;
+            for (; i < len; i++) {
+                char c = note.charAt(i);
+                if (!Character.isWhitespace(c)) {
+                    break;
+                }
+            }
+            if (i == len) return;
+
             builder.withValue(Note.NOTE, note);
             add(builder.build());
         }