Data in Custom properties

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Data in Custom properties

Richard Gaskin via use-livecode
Hi all,

I am a little bit puzzled. a stack I started waaaaay back in engine 4.x always had a custom property set with multiple UTF8 encoded strings. Those were transferred just fine from Mc to PC and the UTF8 strings remained intact. Somewhere down the road something seems to have changed. When I now bring the stack from Mac to PC (engine V. 9, stable) all Umlauts are turned into Question Marks after decoding. Image data also stored in cProps translates just fine though.

I worked around this by base64Encoding the UTF8 stuff now, but somehow I think this should not be necessary, I mean, I chose UTF8 for a reason over ISO Latin, right?

So I wonder: what is data stored in cProps and what should it be? Is it binary (I think it should be)? Should the engine try to be helpful here and change the character encoding depending on the platform (I think it should not)

A) Does this happen to anyone else?
B) If this was to be reproducible also with plain vanilla stacks, what would be your expectations on behaviour?

Cheers,

Malte
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: Data in Custom properties

Richard Gaskin via use-livecode
hey malte ..... the custom properties and array encoding changed with v7
.... its safe to say that is the cause of any issues with character
encoding. ...i store binaries and strings in custom properties ..... so i
think internally it would make sense that its a binary.



On Thu, Jun 21, 2018 at 5:39 PM, Malte Pfaff-Brill via use-livecode <
[hidden email]> wrote:

> Hi all,
>
> I am a little bit puzzled. a stack I started waaaaay back in engine 4.x
> always had a custom property set with multiple UTF8 encoded strings. Those
> were transferred just fine from Mc to PC and the UTF8 strings remained
> intact. Somewhere down the road something seems to have changed. When I now
> bring the stack from Mac to PC (engine V. 9, stable) all Umlauts are turned
> into Question Marks after decoding. Image data also stored in cProps
> translates just fine though.
>
> I worked around this by base64Encoding the UTF8 stuff now, but somehow I
> think this should not be necessary, I mean, I chose UTF8 for a reason over
> ISO Latin, right?
>
> So I wonder: what is data stored in cProps and what should it be? Is it
> binary (I think it should be)? Should the engine try to be helpful here and
> change the character encoding depending on the platform (I think it should
> not)
>
> A) Does this happen to anyone else?
> B) If this was to be reproducible also with plain vanilla stacks, what
> would be your expectations on behaviour?
>
> Cheers,
>
> Malte
> _______________________________________________
> use-livecode mailing list
> [hidden email]
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: Data in Custom properties

Richard Gaskin via use-livecode
It sounds like something somewhere is changing that data to a native string
before being textDecoded. Try putting in some logging of the value of
'tData is strictly a binary string' to find out where it is getting
stringified.

On Fri, 22 Jun 2018 at 18:39, Tom Glod via use-livecode <
[hidden email]> wrote:

> hey malte ..... the custom properties and array encoding changed with v7
> .... its safe to say that is the cause of any issues with character
> encoding. ...i store binaries and strings in custom properties ..... so i
> think internally it would make sense that its a binary.
>
>
>
> On Thu, Jun 21, 2018 at 5:39 PM, Malte Pfaff-Brill via use-livecode <
> [hidden email]> wrote:
>
> > Hi all,
> >
> > I am a little bit puzzled. a stack I started waaaaay back in engine 4.x
> > always had a custom property set with multiple UTF8 encoded strings.
> Those
> > were transferred just fine from Mc to PC and the UTF8 strings remained
> > intact. Somewhere down the road something seems to have changed. When I
> now
> > bring the stack from Mac to PC (engine V. 9, stable) all Umlauts are
> turned
> > into Question Marks after decoding. Image data also stored in cProps
> > translates just fine though.
> >
> > I worked around this by base64Encoding the UTF8 stuff now, but somehow I
> > think this should not be necessary, I mean, I chose UTF8 for a reason
> over
> > ISO Latin, right?
> >
> > So I wonder: what is data stored in cProps and what should it be? Is it
> > binary (I think it should be)? Should the engine try to be helpful here
> and
> > change the character encoding depending on the platform (I think it
> should
> > not)
> >
> > A) Does this happen to anyone else?
> > B) If this was to be reproducible also with plain vanilla stacks, what
> > would be your expectations on behaviour?
> >
> > Cheers,
> >
> > Malte
> > _______________________________________________
> > use-livecode mailing list
> > [hidden email]
> > Please visit this url to subscribe, unsubscribe and manage your
> > subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-livecode
> >
> _______________________________________________
> use-livecode mailing list
> [hidden email]
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode