buffet: Don't deference privet if it's disabled

Refactoring in CL:285673 introduced crash on
nullptr if buffet started with --disable_privet

BUG=brillo:1242
TEST='FEATURES=test emerge-gizmo buffet'
     Run: buffet --disable_privet

Change-Id: I70bdc0118f69e6a64b6831bb3c2e713b8aebdd29
Reviewed-on: https://chromium-review.googlesource.com/286611
Trybot-Ready: Vitaly Buka <vitalybuka@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
diff --git a/buffet/manager.cc b/buffet/manager.cc
index 3ba5f5f..a8f6112 100644
--- a/buffet/manager.cc
+++ b/buffet/manager.cc
@@ -80,12 +80,16 @@
   device_->GetCloud()->AddOnRegistrationChangedCallback(base::Bind(
       &Manager::OnRegistrationChanged, weak_ptr_factory_.GetWeakPtr()));
 
-  device_->GetPrivet()->AddOnWifiSetupChangedCallback(base::Bind(
-      &Manager::UpdateWiFiBootstrapState, weak_ptr_factory_.GetWeakPtr()));
+  if (device_->GetPrivet()) {
+    device_->GetPrivet()->AddOnWifiSetupChangedCallback(base::Bind(
+        &Manager::UpdateWiFiBootstrapState, weak_ptr_factory_.GetWeakPtr()));
 
-  device_->GetPrivet()->AddOnPairingChangedCallbacks(
-      base::Bind(&Manager::OnPairingStart, weak_ptr_factory_.GetWeakPtr()),
-      base::Bind(&Manager::OnPairingEnd, weak_ptr_factory_.GetWeakPtr()));
+    device_->GetPrivet()->AddOnPairingChangedCallbacks(
+        base::Bind(&Manager::OnPairingStart, weak_ptr_factory_.GetWeakPtr()),
+        base::Bind(&Manager::OnPairingEnd, weak_ptr_factory_.GetWeakPtr()));
+  } else {
+    UpdateWiFiBootstrapState(weave::WifiSetupState::kDisabled);
+  }
 
   dbus_adaptor_.RegisterWithDBusObject(&dbus_object_);
   dbus_object_.RegisterAsync(