Error fixed in gl netry when negative entry and cancel event
diff --git a/erpnext/accounts/doctype/gl_control/gl_control.py b/erpnext/accounts/doctype/gl_control/gl_control.py
index fa98441..2a1f2d4 100644
--- a/erpnext/accounts/doctype/gl_control/gl_control.py
+++ b/erpnext/accounts/doctype/gl_control/gl_control.py
@@ -204,10 +204,17 @@
 	# ----------------
 	def save_entries(self, cancel, adv_adj, update_outstanding):
 		for le in self.entries:
-			# cancel
-			if cancel or flt(le.debit) < 0 or flt(le.credit) < 0:
+			#toggle debit, credit if negative entry
+			if flt(le.debit) < 0 or flt(le.credit) < 0:
 				tmp=le.debit
 				le.debit, le.credit = abs(flt(le.credit)), abs(flt(tmp))
+			
+			# toggled debit/credit in two separate condition because both should be executed at the 
+			# time of cancellation when there is negative amount (tax discount)
+			if cancel:
+				tmp=le.debit
+				le.debit, le.credit = abs(flt(le.credit)), abs(flt(tmp))
+
 
 			le_obj = get_obj(doc=le)
 			# validate except on_cancel