brl.json & win8.1

Monkey Forums/Monkey Bug Reports/brl.json & win8.1

Pharmhaus(Posted 2015) [#1]
Hi mark,

There seem to be some differences with different targets and brl.json.
The following code crashes when executed (release mode only) after being compiled with VS 2013 and win8.1 as the target.
It looks like it works just fine on html, glfw etc.




marksibly(Posted 2015) [#2]
Works fine here with the "Windows RT Game (Tablet)" target.

There's nothing target dependent in the json module either (it's all just raw code) so I'm a bit stumped.

I did have to upgrade the project to Windows 8.1 - I reckon perhaps it's time 8.1 was made the default minimum? and msvc2013?


k.o.g.(Posted 2015) [#3]
Hi mark

The problem comes from me, pharmhaus has only posted for me , because my english grammer is very bad.


When i compile the code in monkey in release mode with windows phone as target, then open the visual studio project and compile to device, the app crashes with error "json error".
But when i compile in debug mode, the app works fine on my phone..


CopperCircle(Posted 2015) [#4]
I don't get any errors using json with win phone 8.1 (release or debug), also yes Mark I think the default should be 8.1 and msvc2013 now.


k.o.g.(Posted 2015) [#5]
hmm strange.... i'll post the log from vc2013 today evening..


k.o.g.(Posted 2015) [#6]
the following error occurs:

Ausnahme (erste Chance) bei 0x77A835D7 in TaskHost.exe: Microsoft C++-Ausnahme: c_JsonError bei Speicherort 0x0189F658.
Der Thread 0x9e4 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x12c0 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x16f0 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x123c hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x1418 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0xcc0 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x1150 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x15e0 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0xa3c hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x5c4 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x104c hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x300 hat mit Code -1 (0xffffffff) geendet.
Der Thread 0x6cc hat mit Code -1 (0xffffffff) geendet.
Das Programm "[5432] TaskHost.exe" wurde mit Code -1 (0xffffffff) beendet.


And this only in release mode (from Monkey, not Visual Studio


one of this two lines generates that error:
		String t_name=p_ParseString();
		p_Parse(String(L":",1));


.
.
.
mark, have you any Idea, why the string has so strange value?
Here is the value from release version, you see? the length is 5:

.
.
on the debug version, the string length is 6:



marksibly(Posted 2015) [#7]
Ok, I can get it to crash if I build in release mode in monkey and build/run in msvc release mode. However, I have no idea where the crash is - not sure how you're debugging the release builds above...

Anyway, I've found I can 'fix' the crash by disabling compiler optimizations in msvc, ie: MonkeyGame.PhoneComponent->properties->c/c++->optimization and disable optimization. Does that fix it for you? If so, it means the issue could well be a bug in the msvc arm c++ compiler, as the same c++ code works everywhere else.


k.o.g.(Posted 2015) [#8]
Thanks mark, i will test it tonight and give you feedback ! ..


k.o.g.(Posted 2015) [#9]
Hey Mark, good news.

The app runs, when optimization disabled is!

In this Mode, the string has the same length (Release: 5, Debug: 6) as debug mode in monkey.