removed while loop
diff --git a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py b/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py
index 865c21c..bd928b5 100644
--- a/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py
+++ b/erpnext/support/doctype/maintenance_schedule/maintenance_schedule.py
@@ -4,7 +4,7 @@
 from __future__ import unicode_literals
 import webnotes
 
-from webnotes.utils import add_days, cstr, getdate
+from webnotes.utils import add_days, cstr, getdate, cint
 from webnotes.model.doc import addchild
 from webnotes.model.bean import getlist
 from webnotes import msgprint, throw, _
@@ -93,14 +93,15 @@
 		date_diff = (getdate(end_date) - getdate(start_date)).days
 		add_by = date_diff / no_of_visit
 
-		while (getdate(start_date_copy) < getdate(end_date)):
-			start_date_copy = add_days(start_date_copy, add_by)
-			if len(schedule_list) < no_of_visit:
-				schedule_date = self.validate_schedule_date_for_holiday_list(getdate(start_date_copy), 
-					sales_person)
-				if schedule_date > getdate(end_date):
-					schedule_date = getdate(end_date)
-				schedule_list.append(schedule_date)
+		for visit in range(0, cint(no_of_visit)):
+			if (getdate(start_date_copy) < getdate(end_date)):
+				start_date_copy = add_days(start_date_copy, add_by)
+				if len(schedule_list) < no_of_visit:
+					schedule_date = self.validate_schedule_date_for_holiday_list(getdate(start_date_copy), 
+						sales_person)
+					if schedule_date > getdate(end_date):
+						schedule_date = getdate(end_date)
+					schedule_list.append(schedule_date)
 
 		return schedule_list
 
@@ -115,6 +116,7 @@
 			pass
 
 		if fy_details and fy_details[0]:
+			# check holiday list in employee master
 			holiday_list = webnotes.conn.sql_list("""select h.holiday_date from `tabEmployee` emp, 
 				`tabSales Person` sp, `tabHoliday` h, `tabHoliday List` hl 
 				where sp.name=%s and emp.name=sp.employee 
@@ -122,12 +124,13 @@
 				h.parent=hl.name and 
 				hl.fiscal_year=%s""", (sales_person, fy_details[0]))
 			if not holiday_list:
+				# check global holiday list
 				holiday_list = webnotes.conn.sql("""select h.holiday_date from 
 					`tabHoliday` h, `tabHoliday List` hl 
 					where h.parent=hl.name and ifnull(hl.is_default, 0) = 1 
 					and hl.fiscal_year=%s""", fy_details[0])
 
-			while not validated and holiday_list:
+			if not validated and holiday_list:
 				if schedule_date in holiday_list:
 					schedule_date = add_days(schedule_date, -1)
 				else: