eric at canelasoftware.com
Thu Feb 19 21:31:08 CET 2015
Not sure if this helps, but LiveCode 7 uses a different arrayEncoding than previous version due to Unicode. Check the dictionary on how to use arrayEncode in 7 to be able to decode in an earlier version.
On Feb 19, 2015, at 12:16 PM, Peter Haworth <pete at lcsql.com> wrote:
> 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
> end if
> 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
> worked fine.
> 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.
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
More information about the use-livecode