Two calls screen is not displayed on multiple SIP calls

When accepting the 2nd incoming SIP call, the 1st SIP call is set to
Hold call by calling SipPhone#switchHoldingAndActive().
However, Hold call is returned to Active call afterwards because
switchHoldingAndActive() is called by the TelephonyFWK side again.
Therefore, two calls screen is not displayed because Hold call does
not exist.

Change-Id: I623a67c2493fe7c4bcd8b36f3b13ede31f36b820
diff --git a/sip/src/com/android/services/telephony/sip/SipConnection.java b/sip/src/com/android/services/telephony/sip/SipConnection.java
index 5df61b7..e9f8e05 100644
--- a/sip/src/com/android/services/telephony/sip/SipConnection.java
+++ b/sip/src/com/android/services/telephony/sip/SipConnection.java
@@ -132,7 +132,8 @@
     public void onHold() {
         if (VERBOSE) log("onHold");
         try {
-            if (getPhone() != null && getState() == STATE_ACTIVE) {
+            if (getPhone() != null && getState() == STATE_ACTIVE
+                    && getPhone().getRingingCall().getState() != Call.State.WAITING) {
                 getPhone().switchHoldingAndActive();
             }
         } catch (CallStateException e) {