pete at lcsql.com
Thu Feb 19 21:16:18 CET 2015
I've been careful to create separate versions of my stack files and
Livecode Preferences folder for use when running LC 7. However, it seems
there other issues with compatibility.
I save the preferences for my application in a file in the
/Library/Application Support folder with the following statement:
*write* base64Encode(arrayEncode(gSettings)) to file <filepath>"
These are then read in at startup with:
read from file myPath until EOF
if it is empty then
put empty into gSettings
put arrayDecode(base64Decode(it)) into gSettings
Yesterday, I started working on this stack with LC7 and the prefs file was
saved by the LC7 version of the stack.
Today, I needed to go back to the non LC7 version of the stack. To my
surprise, a runtime error was thrown on the "put arrayDecode..." statement
above. The it variable looked like it contained base64 encoded data.
I ran the LC7 version of the stack again and the runtime error did not
I restored the preferences file from a Time Machine backup that I know
preceded my use of LC7, ran the application again with LC 6.6.2, and all
So it seems that something in either the array/base64 encode/decode
functions changed between v6.6.2 and 7.0.1.
I really want to use LC7 but stuff like this makes me very nervous. How
many other inconsistencies like this are lurking out there.
More information about the use-livecode