diff --git a/gui/action.cpp b/gui/action.cpp
index f7f29e8..7d34da8 100644
--- a/gui/action.cpp
+++ b/gui/action.cpp
@@ -62,7 +62,6 @@
 std::set<string> GUIAction::setActionsRunningInCallerThread;
 static string zip_queue[10];
 static int zip_queue_index;
-static pthread_t terminal_command;
 pid_t sideload_child_pid;
 
 static void *ActionThread_work_wrapper(void *data);
@@ -861,7 +860,6 @@
 int GUIAction::getpartitiondetails(std::string arg)
 {
 	string List, part_path;
-	int count = 0;
 
 	if (arg.empty())
 		arg = "tw_wipe_list";
@@ -1078,7 +1076,7 @@
 		else if (arg == "DATAMEDIA") {
 			ret_val = PartitionManager.Format_Data();
 		} else if (arg == "INTERNAL") {
-			int has_datamedia, dual_storage;
+			int has_datamedia;
 
 			DataManager::GetValue(TW_HAS_DATA_MEDIA, has_datamedia);
 			if (has_datamedia) {
@@ -1097,7 +1095,6 @@
 			string Wipe_List, wipe_path;
 			bool skip = false;
 			ret_val = true;
-			TWPartition* wipe_part = NULL;
 
 			DataManager::GetValue("tw_wipe_list", Wipe_List);
 			LOGINFO("wipe list '%s'\n", Wipe_List.c_str());
@@ -1384,7 +1381,7 @@
 		if (fp == NULL) {
 			LOGERR("Error opening command to run (%s).\n", strerror(errno));
 		} else {
-			int fd = fileno(fp), has_data = 0, check = 0, keep_going = -1, bytes_read = 0;
+			int fd = fileno(fp), has_data = 0, check = 0, keep_going = -1;
 			struct timeval timeout;
 			fd_set fdset;
 
@@ -1425,8 +1422,6 @@
 
 int GUIAction::killterminal(std::string arg __unused)
 {
-	int op_status = 0;
-
 	LOGINFO("Sending kill command...\n");
 	operation_start("KillCommand");
 	DataManager::SetValue("tw_operation_status", 0);
@@ -1883,7 +1878,6 @@
 
 int GUIAction::checkforapp(std::string arg __unused)
 {
-	int op_status = 1;
 	operation_start("Check for TWRP App");
 	if (!simulate)
 	{
