fixes in Pull request
diff --git a/erpnext/projects/doctype/task/task.py b/erpnext/projects/doctype/task/task.py
index 2a7aedc..2ffa1bf 100644
--- a/erpnext/projects/doctype/task/task.py
+++ b/erpnext/projects/doctype/task/task.py
@@ -29,7 +29,7 @@
 	def validate(self):
 		self.validate_dates()
 		self.validate_depends_on()
-		self.reschedule_depending_task()
+		self.reschedule_dependent_task()
 		
 	def validate_dates(self):
 		if self.exp_start_date and self.exp_end_date and getdate(self.exp_start_date) > getdate(self.exp_end_date):
@@ -87,14 +87,16 @@
 			task_list.append(task)
 			return frappe.db.get_value("Task", task, "depends_on")
 			
-	def reschedule_depending_task(self):
-		for task_name in frappe.db.sql("select name from `tabTask` where depends_on = %s", self.name, as_dict=1):
-			task = frappe.get_doc("Task", task_name.name)
-			if task.exp_start_date and task.exp_end_date and (self.exp_end_date or self.act_end_date):
-				task_duration = date_diff(task.exp_end_date, task.exp_start_date)
-				task.exp_start_date = add_days(self.act_end_date if self.act_end_date else self.exp_end_date, 1)
-				task.exp_end_date = add_days(task.exp_start_date, task_duration)
-				task.save()
+	def reschedule_dependent_task(self):
+		end_date = self.exp_end_date or self.act_end_date
+		if end_date:
+			for task_name in frappe.db.sql("select name from `tabTask` where depends_on = %s", self.name, as_dict=1):
+				task = frappe.get_doc("Task", task_name.name)
+				if task.exp_start_date and task.exp_end_date and task.exp_start_date < end_date and task.status == "Open" :
+					task_duration = date_diff(task.exp_end_date, task.exp_start_date)
+					task.exp_start_date = add_days(end_date, 1)
+					task.exp_end_date = add_days(task.exp_start_date, task_duration)
+					task.save()
 
 @frappe.whitelist()
 def get_events(start, end, filters=None):
diff --git a/erpnext/projects/doctype/task/test_task.py b/erpnext/projects/doctype/task/test_task.py
index 30a64f2..bc5ee14 100644
--- a/erpnext/projects/doctype/task/test_task.py
+++ b/erpnext/projects/doctype/task/test_task.py
@@ -39,7 +39,7 @@
 		})
 		self.assertRaises(CircularReferenceError, task1.save)
 		
-	def test_reschedule_depending_task(self):
+	def test_reschedule_dependent_task(self):
 		task1 =  frappe.new_doc('Task')
 		task1.update({
 			"status": "Open",