diff --git a/src/com/android/server/telecom/CallAudioManager.java b/src/com/android/server/telecom/CallAudioManager.java
index 1fb682f..5b5e96e 100644
--- a/src/com/android/server/telecom/CallAudioManager.java
+++ b/src/com/android/server/telecom/CallAudioManager.java
@@ -52,6 +52,7 @@
             Context context,
             StatusBarNotifier statusBarNotifier,
             WiredHeadsetManager wiredHeadsetManager,
+            DockManager dockManager,
             CallsManager callsManager) {
         mStatusBarNotifier = statusBarNotifier;
         mAudioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
@@ -60,7 +61,7 @@
         mCallsManager = callsManager;
 
         mWiredHeadsetManager.addListener(this);
-        mDockManager = DockManager;
+        mDockManager = dockManager;
         mDockManager.addListener(this);
 
         saveAudioState(getInitialAudioState(null));
diff --git a/src/com/android/server/telecom/CallsManager.java b/src/com/android/server/telecom/CallsManager.java
index df750c4..ffaf948 100644
--- a/src/com/android/server/telecom/CallsManager.java
+++ b/src/com/android/server/telecom/CallsManager.java
@@ -161,7 +161,7 @@
         mWiredHeadsetManager = new WiredHeadsetManager(context);
         mDockManager = new DockManager(context);
         mCallAudioManager = new CallAudioManager(
-                context, statusBarNotifier, mWiredHeadsetManager, this);
+                context, statusBarNotifier, mWiredHeadsetManager, mDockManager, this);
         InCallTonePlayer.Factory playerFactory = new InCallTonePlayer.Factory(mCallAudioManager);
         mRinger = new Ringer(mCallAudioManager, this, playerFactory, context);
         mHeadsetMediaButton = headsetMediaButtonFactory.create(context, this);
diff --git a/tests/src/com/android/server/telecom/tests/SimpleTelecomTest.java b/tests/src/com/android/server/telecom/tests/SimpleTelecomTest.java
index 0b5843d..f225823 100644
--- a/tests/src/com/android/server/telecom/tests/SimpleTelecomTest.java
+++ b/tests/src/com/android/server/telecom/tests/SimpleTelecomTest.java
@@ -285,7 +285,16 @@
         // Pass on the new outgoing call Intent
         // Set a dummy PendingResult so the BroadcastReceiver agrees to accept onReceive()
         mNewOutgoingCallReceiver.setPendingResult(
-                new BroadcastReceiver.PendingResult(0, "", null, 0, true, false, null, 0));
+                new BroadcastReceiver.PendingResult(
+                        0, /* resultCode*/
+                        "", /* resultData */
+                        null, /* resultExtras */
+                        0, /* type */
+                        false, /* ordered */
+                        false, /* sticky */
+                        null, /* token */
+                        0, /* userId */
+                        0)); /* flags */
         mNewOutgoingCallReceiver.setResultData(
                 mNewOutgoingCallIntent.getStringExtra(Intent.EXTRA_PHONE_NUMBER));
         mNewOutgoingCallReceiver.onReceive(
