OSDN Git Service

resolved conflicts for merge of 75402fdb to master
authorColin Cross <ccross@android.com>
Thu, 24 Apr 2014 15:39:41 +0000 (08:39 -0700)
committerColin Cross <ccross@android.com>
Thu, 24 Apr 2014 15:39:41 +0000 (08:39 -0700)
Change-Id: Ie85a3c7d498d7685738190267916e9a205cc469e

1  2 
audio/AudioPolicyManagerBase.cpp

@@@ -92,20 -94,10 +95,20 @@@ status_t AudioPolicyManagerBase::setDev
              }
              ALOGV("setDeviceConnectionState() connecting device %x", device);
  
 -            if (checkOutputsForDevice(device, state, outputs) != NO_ERROR) {
 +            if (mHasA2dp && audio_is_a2dp_device(device)) {
 +                // handle A2DP device connection
 +                AudioParameter param;
 +                param.add(String8(AUDIO_PARAMETER_A2DP_SINK_ADDRESS), String8(device_address));
 +                paramStr = param.toString();
 +            } else if (mHasUsb && audio_is_usb_device(device)) {
 +                // handle USB device connection
 +                paramStr = String8(device_address, MAX_DEVICE_ADDRESS_LEN);
 +            }
 +
 +            if (checkOutputsForDevice(device, state, outputs, paramStr) != NO_ERROR) {
                  return INVALID_OPERATION;
              }
-             ALOGV("setDeviceConnectionState() checkOutputsForDevice() returned %d outputs",
+             ALOGV("setDeviceConnectionState() checkOutputsForDevice() returned %zu outputs",
                    outputs.size());
              // register new device as available
              mAvailableOutputDevices = (audio_devices_t)(mAvailableOutputDevices | device);
@@@ -2012,8 -1999,9 +2015,8 @@@ status_t AudioPolicyManagerBase::checkO
              for (size_t j = 0; j < mHwModules[i]->mOutputProfiles.size(); j++)
              {
                  IOProfile *profile = mHwModules[i]->mOutputProfiles[j];
 -                if ((profile->mSupportedDevices & device) &&
 -                        (profile->mFlags & AUDIO_OUTPUT_FLAG_DIRECT)) {
 +                if (profile->mSupportedDevices & device) {
-                     ALOGV("checkOutputsForDevice(): clearing direct output profile %d on module %d",
+                     ALOGV("checkOutputsForDevice(): clearing direct output profile %zu on module %zu",
                            j, i);
                      if (profile->mSamplingRates[0] == 0) {
                          profile->mSamplingRates.clear();
@@@ -3531,17 -3521,17 +3534,17 @@@ void AudioPolicyManagerBase::HwModule::
      result.append(buffer);
      write(fd, result.string(), result.size());
      if (mOutputProfiles.size()) {
 -        write(fd, "  - outputs:\n", sizeof("  - outputs:\n"));
 +        write(fd, "  - outputs:\n", strlen("  - outputs:\n"));
          for (size_t i = 0; i < mOutputProfiles.size(); i++) {
-             snprintf(buffer, SIZE, "    output %d:\n", i);
+             snprintf(buffer, SIZE, "    output %zu:\n", i);
              write(fd, buffer, strlen(buffer));
              mOutputProfiles[i]->dump(fd);
          }
      }
      if (mInputProfiles.size()) {
 -        write(fd, "  - inputs:\n", sizeof("  - inputs:\n"));
 +        write(fd, "  - inputs:\n", strlen("  - inputs:\n"));
          for (size_t i = 0; i < mInputProfiles.size(); i++) {
-             snprintf(buffer, SIZE, "    input %d:\n", i);
+             snprintf(buffer, SIZE, "    input %zu:\n", i);
              write(fd, buffer, strlen(buffer));
              mInputProfiles[i]->dump(fd);
          }