Do not mark as read if it already is.

This prevents notifications to be sent to voicemail sources when nothing
has actually changed, which may trigger a full sync every time one opens
a voicemail which was already read, which is unnecessary.

Bug: 5475195
Change-Id: Icc99eb1250dc8e650ef6b129fdc2d870f4e0dabb
diff --git a/src/com/android/contacts/CallDetailActivity.java b/src/com/android/contacts/CallDetailActivity.java
index 012acc7..d126aff 100644
--- a/src/com/android/contacts/CallDetailActivity.java
+++ b/src/com/android/contacts/CallDetailActivity.java
@@ -290,7 +290,8 @@
             public Void doInBackground(Void... params) {
                 ContentValues values = new ContentValues();
                 values.put(Voicemails.IS_READ, true);
-                getContentResolver().update(voicemailUri, values, null, null);
+                getContentResolver().update(voicemailUri, values,
+                        Voicemails.IS_READ + " = 0", null);
                 return null;
             }
         });