liushiwei / google-gson

Automatically exported from code.google.com/p/google-gson
0 stars 0 forks source link

JsonElement's getAsInt() doesn't throw an Error when converting an too big exponential value #630

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
Example:
String json = "{\"id\":1e10000010}";
JsonParser parser = new JsonParser();
JsonObject jsonObj = (JsonObject) parser.parse(json);
Date before = new Date();
Integer Id = jsonObj.get("id").getAsInt();
Date after = new Date();
Long diff = after.getTime() - before.getTime();
System.out.println("Id: " + Id + "   Milliseconds: " + diff);

Output: Id: 0   Milliseconds: 9714

What is the expected output? What do you see instead?
It should throw an error, but instead returns 0 after a long time.

What version of the product are you using? On what operating system?
Gson 2.3.1
Ubuntu 14.04

Original issue reported on code.google.com by Sebastia...@gmail.com on 4 Mar 2015 at 2:41

GoogleCodeExporter commented 9 years ago
The currently used Java Version is 1.8.0_31

Original comment by Sebastia...@gmail.com on 5 Mar 2015 at 8:10