cloudwu / sproto

Yet another protocol library like google protocol buffers , but simple and fast.
MIT License
942 stars 253 forks source link

修正lua5.1版本解析长整型错误的问题 #71

Closed chengdd1987 closed 7 years ago

chengdd1987 commented 7 years ago

兼容旧版本的lua_tointegerx函数返回值是一个lua_integer 在5.1版本中为32位

cloudwu commented 7 years ago

lua_tonumber 会损失整型精度。对于不支持整型的老版本,支持到 32 bit 即可。

cloudwu commented 7 years ago

用于 id 目的的长整数,应该使用 string 来表达。

cloudwu commented 7 years ago

可以用 string.pack/string.unpack 。

chengdd1987 commented 7 years ago

..我不是fork来改的么..怎么提交到这里了. 我们前端用cocos lua是5.1版本的 没有stirng.pack/unpack本身想在5.1移植的 工程量太大了 这几个函数是从pbc上移植过来的

cloudwu commented 7 years ago

用一个分支来维护差异比较好。

string.pack 可以用 lpack 库。 https://github.com/LuaDist/lpack

chengdd1987 commented 7 years ago

3q