Skip to content
This repository was archived by the owner on Apr 28, 2020. It is now read-only.

Commit cc51278

Browse files
authored
Merge pull request #1 from json5/master
Merge from master
2 parents 5cad260 + edfc83f commit cc51278

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

Json5/Json5Number.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
using System.Globalization;
2+
13
namespace Json5
24
{
35
public class Json5Number : Json5Primitive
@@ -21,7 +23,7 @@ protected override object Value
2123

2224
internal override string ToJson5String(string space, string indent)
2325
{
24-
return this.value.ToString();
26+
return this.value.ToString(CultureInfo.InvariantCulture);
2527
}
2628

2729
public static implicit operator double(Json5Number value)

Json5/Parsing/Json5Lexer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -558,7 +558,8 @@ public Json5Token Read()
558558
}
559559

560560
// Parse this value with BigInteger because ulong can only parse numbers up to 0xFFFFFFFFFFFFFFFF.
561-
return Token(Json5TokenType.Number, sign * (double)BigInteger.Parse(valueBuffer, NumberStyles.HexNumber), inputBuffer);
561+
// Add '0' to valueBuffer since otherwise it will be parsed as signed value (e.g. ff would be -1)
562+
return Token(Json5TokenType.Number, sign * (double)BigInteger.Parse("0" + valueBuffer, NumberStyles.HexNumber), inputBuffer);
562563

563564
case State.String:
564565
switch (r)

0 commit comments

Comments
 (0)