pbc icon indicating copy to clipboard operation
pbc copied to clipboard

pbc指针模式decode时出现context error

Open txal opened this issue 9 years ago • 3 comments

local data = {account= "robot1"} local savebuffer, savelength local function _callback(buffer, length) ---在这里直接decode就没问题 savebuffer = buffer savelength = length end --parser.register("test.proto") --test.proto: -- message test -- { -- required string account = 1; -- } protobuf.encode("test", data, _callback) protobuf.decode("test", savebuffer, savelength) ---这里出现context error

txal avatar Mar 10 '16 10:03 txal

你不考虑一下我的lua-protobuf么?云风自己都不维护pbc了

starwing avatar Mar 10 '16 10:03 starwing

你保证了 buffer 这个指针还是有效的吗?

这里 decode 传入的 buffer/length 隐含着 buffer 是一个 lightuserdata ,生命期需要自己维护。 如果维护不清楚,那么请转成一个 string 。

encode 的 callback 会在调用结束后,清理掉 callback 传入的指针对应的内存。

cloudwu avatar Mar 11 '16 06:03 cloudwu

明白,谢谢!

txal avatar Mar 26 '16 04:03 txal