diff --git a/sflphone-common/src/sip/im/InstantMessaging.cpp b/sflphone-common/src/sip/im/InstantMessaging.cpp
index 7f48c721c3e624add2da6c9bcfa52e4e23d28e84..76bbdd0b7baa48d7f4b0fd22fba0a34325ca3a71 100644
--- a/sflphone-common/src/sip/im/InstantMessaging.cpp
+++ b/sflphone-common/src/sip/im/InstantMessaging.cpp
@@ -311,9 +311,9 @@ std::string InstantMessaging::findTextUriList (std::string text)
 
     size_t begin = pos+cdispo.size();
 
-    size_t end = text.find ("--boundary1--", begin);
+    size_t end = text.find ("--boundary--", begin);
 
-    return text.substr (begin, end);
+    return text.substr (begin, end-begin);
 }
 
 std::string InstantMessaging::findTextMessage (std::string text)
@@ -327,7 +327,7 @@ std::string InstantMessaging::findTextMessage (std::string text)
 
     size_t end = text.find (boundary, begin);
 
-    return text.substr (begin, end);
+    return text.substr (begin, end-begin);
 }
 
 
diff --git a/sflphone-common/test/instantmessagingtest.cpp b/sflphone-common/test/instantmessagingtest.cpp
index 4b60cd4a37d12c98a56d3682085c7c9707232abf..2ccea41ed99fae459a91a774d69b22ff3745e4df 100644
--- a/sflphone-common/test/instantmessagingtest.cpp
+++ b/sflphone-common/test/instantmessagingtest.cpp
@@ -265,6 +265,51 @@ void InstantMessagingTest::testXmlUriListParsing ()
     }
 }
 
+void InstantMessagingTest::testGetTextArea ()
+{
+
+    std::string formatedText = "--boundary\n Content-Type: text/plain\n\n";
+    formatedText.append ("Here is the text area");
+
+    formatedText.append ("\n--boundary\nContent-Type: application/resource-lists+xml\n");
+    formatedText.append ("Content-Disposition: recipient-list\n\n");
+    formatedText.append ("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
+    formatedText.append ("<resource-lists xmlns=\"urn:ietf:params:xml:ns:resource-lists\" xmlns:cp=\"urn:ietf:params:xml:ns:copycontrol\">");
+    formatedText.append ("<list>");
+    formatedText.append ("<entry uri=\"sip:alex@example.com\" cp:copyControl=\"to\" />");
+    formatedText.append ("<entry uri=\"sip:manu@example.com\" cp:copyControl=\"to\" />");
+    formatedText.append ("</list>");
+    formatedText.append ("</resource-lists>");
+    formatedText.append ("--boundary--");
+
+    std::string message = _im->findTextMessage(formatedText);
+
+    std::cout << "message: " << message << std::endl;
+}
+
+
+void InstantMessagingTest::testGetUriListArea ()
+{
+    std::string formatedText = "--boundary\n Content-Type: text/plain\n\n";
+    formatedText.append ("Here is the text area");
+
+    formatedText.append ("\n--boundary\nContent-Type: application/resource-lists+xml\n");
+    formatedText.append ("Content-Disposition: recipient-list\n\n");
+    formatedText.append ("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
+    formatedText.append ("<resource-lists xmlns=\"urn:ietf:params:xml:ns:resource-lists\" xmlns:cp=\"urn:ietf:params:xml:ns:copycontrol\">");
+    formatedText.append ("<list>");
+    formatedText.append ("<entry uri=\"sip:alex@example.com\" cp:copyControl=\"to\" />");
+    formatedText.append ("<entry uri=\"sip:manu@example.com\" cp:copyControl=\"to\" />");
+    formatedText.append ("</list>");
+    formatedText.append ("</resource-lists>");
+    formatedText.append ("--boundary--");
+
+    std::string urilist = _im->findTextUriList(formatedText);
+
+    std::cout << "urilist: " << urilist << std::endl;
+}
+
+
 void InstantMessagingTest::tearDown()
 {
     delete _im;
diff --git a/sflphone-common/test/instantmessagingtest.h b/sflphone-common/test/instantmessagingtest.h
index 9194cb3f6b34a4953bd16ff95563dd06ffe7fa44..d96211fa618e2907b5e8337358cb05442e6ba17a 100644
--- a/sflphone-common/test/instantmessagingtest.h
+++ b/sflphone-common/test/instantmessagingtest.h
@@ -58,6 +58,8 @@ class InstantMessagingTest : public CppUnit::TestCase {
         CPPUNIT_TEST (testSplitMessage);
 	CPPUNIT_TEST (testGenerateXmlUriList);
 	CPPUNIT_TEST (testXmlUriListParsing);
+	CPPUNIT_TEST (testGetTextArea);
+	CPPUNIT_TEST (testGetUriListArea);
     CPPUNIT_TEST_SUITE_END();
 
     public:
@@ -84,6 +86,10 @@ class InstantMessagingTest : public CppUnit::TestCase {
 	void testGenerateXmlUriList ();
 
 	void testXmlUriListParsing ();
+
+	void testGetTextArea ();
+
+	void testGetUriListArea ();
         
     private:
 		sfl::InstantMessaging *_im;