[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Make sure numbers are numbers
- From: Pan Shi Zhu <pan.shizhu@...>
- Date: Mon, 19 Apr 2010 11:51:45 +0800
On Fri, Apr 16, 2010 at 11:07 AM, Henk Boom <henk@henk.ca> wrote:
> I just fixed a subtle bug in my serialization/deserialization
> functions for a data structure, where objects that were serialized
> then deserialized looked identical but behaved slightly differently.
> It was caused by something like this:
>
>> return 9 < 10
> true
>> return "9" < "10"
> false
>
> Lesson learned: make sure to use tonumber() on numbers you extract
> from strings...
hmm, this works in lua.
in C, the lua_tonumber() is an in-place convertion, it changes the
value in stack and may cause unwanted behavior when you're iterating a
table.