#17220: fix service NullPointerException issue

Conflicts:

	src/com/savoirfairelinux/sflphone/client/CallElementList.java
diff --git a/src/com/savoirfairelinux/sflphone/client/AccountManagementFragment.java b/src/com/savoirfairelinux/sflphone/client/AccountManagementFragment.java
index faf8f72..23f3bfe 100644
--- a/src/com/savoirfairelinux/sflphone/client/AccountManagementFragment.java
+++ b/src/com/savoirfairelinux/sflphone/client/AccountManagementFragment.java
@@ -72,7 +72,7 @@
     static final int ACCOUNT_CREATE_REQUEST = 1;
     static final int ACCOUNT_EDIT_REQUEST = 2;
     private SFLPhonePreferenceActivity sflphonePreferenceActivity;
-    private ISipService service;
+    private ISipService service = null;
 
     ArrayList<AccountDetail.PreferenceEntry> basicDetailKeys = null;
     ArrayList<AccountDetail.PreferenceEntry> advancedDetailKeys = null;
@@ -106,6 +106,19 @@
 
         Log.i(TAG, "Create Account Management Fragment");
 
+        /*
+         * FIXME if service cannot be obtained from SFLPhonePreferenceActivity,
+         * then get it from Application
+         */
+        service = sflphonePreferenceActivity.getSipService();
+        if (service == null) {
+            service = ((SFLphoneApplication)sflphonePreferenceActivity.getApplication()).getSipService();
+            if (service == null) {
+                Log.e(TAG, "onCreate() service=" + service);
+            }
+        }
+        Log.w(TAG, "onCreate() service=" + service);
+
         setPreferenceScreen(getAccountListPreferenceScreen());
 
         LocalBroadcastManager.getInstance(getActivity()).registerReceiver(mMessageReceiver, new IntentFilter("accounts-changed"));