                  }
              }
              
-@@ -254,6 +276,11 @@ void start_button_clicked(GtkWidget *widget, gpointer data) {
+@@ -251,14 +273,20 @@ void start_button_clicked(GtkWidget *widget, gpointer data) {
+         gtk_widget_set_sensitive(notebook, FALSE);
+     }
+     else {
++        /* Prevent multiple entry */
++        state->running = 0;
++
          kill(state->pid, SIGTERM);
  
          wait(&status);

 void notebook_page_switched(GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer user_data);
 void about_button_clicked(GtkWidget *widget, gpointer data);
 void start_button_clicked(GtkWidget *widget, gpointer data);
diff --git a/src/synergy_config.c b/src/synergy_config.c
index 4703221..3b4308b 100644
--- a/src/synergy_config.c

         
         gtk_button_set_label(GTK_BUTTON(widget), GTK_STOCK_EXECUTE);
         gtk_widget_set_sensitive(notebook, TRUE);
-        
-        state->running = 0;
     }
 }
 
diff --git a/src/callbacks.h b/src/callbacks.h
index 32ff8c6..9cc17bb 100644
--- a/src/callbacks.h
