* #33708: fixed im crash in Conference
diff --git a/src/org/sflphone/model/Conference.java b/src/org/sflphone/model/Conference.java
index 465a307..9ff5570 100644
--- a/src/org/sflphone/model/Conference.java
+++ b/src/org/sflphone/model/Conference.java
@@ -59,6 +59,8 @@
     public Conference(String cID) {
         id = cID;
         participants = new ArrayList<SipCall>();
+        recording = false;
+        messages = new ArrayList<SipMessage>();
     }
 
     public Conference(Conference c) {
@@ -66,6 +68,7 @@
         state = c.state;
         participants = new ArrayList<SipCall>(c.participants);
         recording = c.recording;
+        messages = new ArrayList<SipMessage>();
     }
 
     public String getId() {
@@ -164,4 +167,8 @@
 
     }
 
+    public void addSipMessage(SipMessage sipMessage) {
+        messages.add(sipMessage);
+    }
+
 }
diff --git a/src/org/sflphone/receivers/IncomingReceiver.java b/src/org/sflphone/receivers/IncomingReceiver.java
index 2734da2..8467749 100644
--- a/src/org/sflphone/receivers/IncomingReceiver.java
+++ b/src/org/sflphone/receivers/IncomingReceiver.java
@@ -56,7 +56,14 @@
 
             Bundle extra = intent.getBundleExtra("com.savoirfairelinux.sflphone.service.newtext");
             Log.i(TAG, "Received" + intent.getAction());
-            callback.getCurrent_calls().get(extra.get("CallID")).addSipMessage(new SipMessage(true, extra.getString("Msg")));
+            if (callback.getCurrent_calls().get(extra.getString("CallID")) != null) {
+                callback.getCurrent_calls().get(extra.get("CallID")).addSipMessage(new SipMessage(true, extra.getString("Msg")));
+            } else if(callback.getCurrent_confs().get(extra.getString("CallID")) != null){
+                callback.getCurrent_confs().get(extra.get("CallID")).addSipMessage(new SipMessage(true, extra.getString("Msg")));
+            } else 
+                return;
+                
+           
             callback.sendBroadcast(intent);
 
         } else if (intent.getAction().contentEquals(CallManagerCallBack.INCOMING_CALL)) {
diff --git a/src/org/sflphone/service/SipService.java b/src/org/sflphone/service/SipService.java
index 29f8df6..8f3f2d4 100644
--- a/src/org/sflphone/service/SipService.java
+++ b/src/org/sflphone/service/SipService.java
@@ -1022,7 +1022,10 @@
                 protected void doRun() throws SameThreadException, RemoteException {
                     Log.i(TAG, "SipService.sendTextMessage() thread running...");
                     callManagerJNI.sendTextMessage(callID, message.comment);
-                    getCurrent_calls().get(callID).addSipMessage(message);
+                    if(getCurrent_calls().get(callID) != null)
+                        getCurrent_calls().get(callID).addSipMessage(message);
+                    else if(getCurrent_confs().get(callID) != null)
+                        getCurrent_confs().get(callID).addSipMessage(message);
                 }
             });