calling: do not finish call on error

Do not finish call on error but hang up.

Change-Id: Ie6870a8e0c5e39ee149db4d0780a6ef16ce9ba09
diff --git a/ring-android/libringclient/src/main/java/cx/ring/call/CallPresenter.java b/ring-android/libringclient/src/main/java/cx/ring/call/CallPresenter.java
index 6f2483c..6b80fd7 100644
--- a/ring-android/libringclient/src/main/java/cx/ring/call/CallPresenter.java
+++ b/ring-android/libringclient/src/main/java/cx/ring/call/CallPresenter.java
@@ -87,7 +87,7 @@
     }
 
     public void audioPermissionChanged(boolean isGranted) {
-        if(isGranted && mHardwareService.hasMicrophone()) {
+        if (isGranted && mHardwareService.hasMicrophone()) {
             mCallService.setAudioPlugin(mCallService.getCurrentAudioOutputPlugin());
         }
     }
@@ -140,7 +140,10 @@
                 .subscribe(call -> {
                     contactUpdate(call);
                     confUpdate(call);
-                }, e -> finish()));
+                }, e -> {
+                    hangupCall();
+                    Log.e(TAG, "Error with initOutgoing: " + e.getMessage());
+                }));
     }
 
     public void initIncoming(String confId) {
@@ -150,7 +153,10 @@
                 .subscribe(call -> {
                     contactUpdate(call);
                     confUpdate(call);
-                }, e -> finish()));
+                }, e -> {
+                    hangupCall();
+                    Log.e(TAG, "Error with initIncoming: " + e.getMessage());
+                }));
     }
 
     public void prepareOptionMenu() {
@@ -276,7 +282,7 @@
             mSipCall = call;
             mCompositeDisposable.add(mContactService.observeContact(call.getAccount(), call.getContact())
                     .observeOn(mUiScheduler)
-                    .subscribe(c -> getView().updateContactBubble(c)));
+                    .subscribe(c -> getView().updateContactBubble(c), e -> Log.e(TAG, e.getMessage())));
         }
     }