diff --git a/sflphone-client-gnome/src/callable_obj.c b/sflphone-client-gnome/src/callable_obj.c
index 73fca789d651105fc983c4bf417a6ae93886f33e..8165ada6ce359295cb2fb4ce5605b772de194871 100644
--- a/sflphone-client-gnome/src/callable_obj.c
+++ b/sflphone-client-gnome/src/callable_obj.c
@@ -139,6 +139,8 @@ void *threaded_clock_incrementer(void *pc) {
     int duration;
     time_t start, current;
 
+    gdk_threads_enter ();
+
     set_timestamp(&(call->_time_current));
 
     start = call->_time_start;
@@ -171,6 +173,8 @@ void *threaded_clock_incrementer(void *pc) {
 
     calltree_update_clock();
 
+    gdk_threads_leave ();
+
     sleep(1);
   }
 }