It's definitely the long bundleid. Here's the kicker: Dan and I couldn't reproduce it immediately because we have 2-digit user ids in WOPR and that wasn't quite enough to trigger the problem. The json encoder has a function that adds the necessary backslash and \u
quoting to the input data, first counting up how much space it'll need then either using the stack if it's <= 128 characters or using malloc() if not. So in our case it was using a stack buffer, for everyone else the heap. Next, a while back I added escaping to the forward slash as required by json but forgot to add it to the count. So we have an out of bounds write there, which doesn't do anything terrible on the stack but really messes up the heap here because it's system heap using newlib's allocator which stores block data at the start of blocks--an out of bounds write blows away the next block's info and causes all sorts of trouble. For game heap we're using dlmalloc which stores block info in a separate struct.
I'll get an MR in ASAP and hopefully we can get a patch release out soon. Sorry for the trouble!