Is it bad that every time someone reports a major bug I rub my hands together excitedly in a "Let's get to work!" kind of way? First, the simple one: That array thing is quite odd. Here's a little test case:Code: (javascript) [Select]var hippo = [ [ "maggie" ] ];var x, y = 0;Abort(hippo[x][y]);This fails in both minisphere and vanilla. The errors are:minisphere - TypeError: "invalid base value"Sphere 1.5 - TypeError: "hippo[ x ] has no properties"So, not sure what's going on, maybe behavior is different enough between the two engines that x ends up undefined sometimes in minisphere while it never does in Sphere. I don't know.
var hippo = [ [ "maggie" ] ];var x, y = 0;Abort(hippo[x][y]);
var array = [];array[{}] = true;Abort(Object.keys(array));
Sounds like duktape doesn't like using `undefined` as an object key. This is probably a bug, it should coerce to a string first, which SM and V8 do. e.g. hippo[undefined] = true; should be equivalent to hippo['undefined'] = true;. Just wondering, what happens if you try:Code: [Select]var array = [];array[{}] = true;Abort(Object.keys(array));This should give you "[object Object]" as the only key in the object.
Oh and yes, no mp3 support sadly . Allegro apparently doesn't include it, I assume due to licensing issues, and I haven't yet found any addons to re-add support for it.
Quote from: casiotone on April 07, 2015, 12:14:10 pmSounds like duktape doesn't like using `undefined` as an object key. This is probably a bug, it should coerce to a string first, which SM and V8 do. e.g. hippo[undefined] = true; should be equivalent to hippo['undefined'] = true;. Just wondering, what happens if you try:Code: [Select]var array = [];array[{}] = true;Abort(Object.keys(array));This should give you "[object Object]" as the only key in the object.It does. Also, changing array[{}] to array[undefined] yields 'undefined' as the final output.