suppress syncs until boot is complete
diff --git a/core/java/android/content/SyncManager.java b/core/java/android/content/SyncManager.java
index 4e9e49c..1f3fbf6 100644
--- a/core/java/android/content/SyncManager.java
+++ b/core/java/android/content/SyncManager.java
@@ -177,6 +177,7 @@
     private BroadcastReceiver mBootCompletedReceiver = new BroadcastReceiver() {
         public void onReceive(Context context, Intent intent) {
             if (!mFactoryTest) {
+                mBootCompleted = true;
                 AccountManager.get(mContext).addOnAccountsUpdatedListener(SyncManager.this,
                         mSyncHandler, true /* updateImmediately */);
             }
@@ -283,6 +284,8 @@
 
     private final boolean mFactoryTest;
 
+    private volatile boolean mBootCompleted = false;
+
     private ConnectivityManager getConnectivityManager() {
         synchronized (this) {
             if (mConnManagerDoNotUseDirectly == null) {
@@ -541,6 +544,13 @@
             Bundle extras, long delay, boolean onlyThoseWithUnkownSyncableState) {
         boolean isLoggable = Log.isLoggable(TAG, Log.VERBOSE);
 
+        if (!mBootCompleted) {
+            if (isLoggable) {
+                Log.v(TAG, "suppressing scheduleSync() since boot hasn't completed");
+            }
+            return;
+        }
+
         if (!isSyncEnabled()) {
             if (isLoggable) {
                 Log.v(TAG, "not syncing because sync is disabled");