diff --git a/src/c-wrapper/api/c-chat-room.cpp b/src/c-wrapper/api/c-chat-room.cpp
index 304122981fe0b9f9cea2cb5abefc191d6120b8eb..6b398e121a2f68b458c0c9aa4729a3da1213366c 100644
--- a/src/c-wrapper/api/c-chat-room.cpp
+++ b/src/c-wrapper/api/c-chat-room.cpp
@@ -528,7 +528,7 @@ void linphone_chat_room_set_conference_address(LinphoneChatRoom *cr, LinphoneAdd
 	    dynamic_cast<LinphonePrivate::ServerGroupChatRoomPrivate *>(L_GET_PRIVATE_FROM_C_OBJECT(cr));
 	if (sgcr) {
 		std::shared_ptr<LinphonePrivate::Address> idAddr =
-		    LinphonePrivate::Address::toCpp(confAddr)->getSharedFromThis();
+		    confAddr ? LinphonePrivate::Address::toCpp(confAddr)->getSharedFromThis() : NULL;
 		sgcr->setConferenceAddress(idAddr);
 	}
 #else