Ver código fonte

Cleaning code

Sebastien Ros 12 anos atrás
pai
commit
1cb96c52b0
2 arquivos alterados com 8 adições e 2 exclusões
  1. 1 0
      Fix.playlist
  2. 7 2
      Jint/Native/Array/ArrayPrototype.cs

+ 1 - 0
Fix.playlist

@@ -0,0 +1 @@
+<Playlist Version="1.0"><Add Test="Jint.Tests.Ecma.Test_9_8_1.ReturnTheStringConsistingOfTheMostSignificantDigitOfTheDecimalRepresentationOfSFollowedByADecimalPointFollowedByTheRemainingK1DigitsOfTheDecimalRepresentationOfSFollowedByTheLowercaseCharacterEFollowedByAPlusSignOrMinusSignAccordingToWhetherN1IsPositiveOrNegativeFollowedByTheDecimalRepresentationOfTheIntegerAbsN1WithNoLeadingZeros" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.If1S1E21Or1E21S1ReturnTheStringConsistingOfTheKDigitsOfTheDecimalRepresentationOfSInOrderWithNoLeadingZeroesFollowedByNKOccurrencesOfTheCharacter0" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.If1S1And6N0ReturnTheStringConsistingOfTheCharacter0FollowedByADecimalPointFollowedByNOccurrencesOfTheCharacter0FollowedByTheKDigitsOfTheDecimalRepresentationOfS" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.ReturnTheStringConsistingOfTheSingleDigitOfSFollowedByLowercaseCharacterEFollowedByAPlusSignOrMinusSignAccordingToWhetherN1IsPositiveOrNegativeFollowedByTheDecimalRepresentationOfTheIntegerAbsN1WithNoLeadingZeros" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.ReturnTheStringConsistingOfTheSingleDigitOfSFollowedByLowercaseCharacterEFollowedByAPlusSignOrMinusSignAccordingToWhetherN1IsPositiveOrNegativeFollowedByTheDecimalRepresentationOfTheIntegerAbsN1WithNoLeadingZeros2" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.IfMIsNanReturnTheStringNan" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.IfMIs0Or0ReturnTheString0" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.IfMIsLessThanZeroReturnTheStringConcatenationOfTheStringAndTostringM" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.IfMIsInfinityReturnTheStringInfinity" /><Add Test="Jint.Tests.Ecma.Test_9_8_1.If1S1E21Or1E21S1AndSHasAFractionalComponentReturnTheStringConsistingOfTheMostSignificantNDigitsOfTheDecimalRepresentationOfSFollowedByADecimalPointFollowedByTheRemainingKNDigitsOfTheDecimalRepresentationOfS" /></Playlist>

+ 7 - 2
Jint/Native/Array/ArrayPrototype.cs

@@ -1,6 +1,5 @@
 using System;
 using System.Collections.Generic;
-using System.Dynamic;
 using System.Linq;
 using Jint.Native.Object;
 using Jint.Runtime;
@@ -110,6 +109,12 @@ namespace Jint.Native.Array
         private object Sort(object thisObj, object[] arguments)
         {
             var obj = thisObj as ObjectInstance;
+
+            if(obj == null)
+            {
+                throw new JavaScriptException(Engine.TypeError, "Array.prorotype.sort can only be applied on objects");  
+            }
+
             var len = obj.Get("length");
             var lenVal = TypeConverter.ToInt32(len);
             if (lenVal <= 1)
@@ -397,7 +402,7 @@ namespace Jint.Native.Array
             var o = TypeConverter.ToObject(Engine, thisObj);
             var a = Engine.Array.Construct(Arguments.Empty);
             var n = 0;
-            var items = new List<object>() {o};
+            var items = new List<object> {o};
             items.AddRange(arguments);
 
             foreach (var e in items)