Răsfoiți Sursa

Make very simple shallow copy of aceDelta when there's an undo error

James Allen 10 ani în urmă
părinte
comite
26410690da

+ 4 - 9
services/web/public/coffee/ide/editor/directives/aceEditor/undo/UndoManager.coffee

@@ -233,16 +233,11 @@ define [
 			start = aceDelta.start
 			start = aceDelta.start
 			if !start?
 			if !start?
 				error = new Error("aceDelta had no start event.")
 				error = new Error("aceDelta had no start event.")
-				JSONstringifyWithCycles = (o) ->
-					seen = []
-					return JSON.stringify o, (k,v) ->
-						if (typeof v == 'object')
-							if ( !seen.indexOf(v) )
-								return '__cycle__'
-							seen.push(v);
-						return v
+				inspectedAceDelta = {}
+				for key, value of aceDelta
+					inspectedAceDelta[key] = typeof value
 				Raven?.captureException(error, {
 				Raven?.captureException(error, {
-					aceDelta: JSONstringifyWithCycles(aceDelta)
+					aceDelta: JSON.stringify(inspectedAceDelta)
 				})
 				})
 				throw error
 				throw error
 			linesBefore = docLines.slice(0, start.row)
 			linesBefore = docLines.slice(0, start.row)