Yes, you are correct, this is the same error. The sign "°" is char 176 (decimal), equals to "\xB0" in hex and will be exactly in the problematic range of chars. Try the following (as alternative to the solution 'String.fromCharCode(176)') and simply add a space behind the degree sign:
and the script is working again (I just tried it myself).
For your other errors you mentioned in your post: scan your scripts for the 'setGlobal' function and correct the storing with my function above (adding the 'Add_Space_Error()' function). If the next firmware will work correctly again, you than could simply delete the two first lines in the function like this:
function Add_Space_Error(data) { return(data); }
and your scripts will be working again with the firmware v4.0.17+1 (if the error will be corrected).
Either the setGlobal or the getGlobal function does not count the chars with a hex value higher than 127 and will truncate the string. Without access to the internal global memory, I really can't tell if the string is beeing truncated at the storing (setGlobal) or retrieving function (getGlobal) - I suppose it will be at the retrieving function (getGlobal) due to the behaviour if such a char is exactly at the end of the to be retrieved string -> abort and jumping to the home page. But this is just a guess of mine and a job for the Pronto team to find out definitely
Have you sent them a XCF already as Lindel suggested ?