[M3devel] pickle bug..solved?.. not supposed to work?
Jay K
jay.krell at cornell.edu
Sun Dec 13 06:34:21 CET 2009
https://projects.elego.de/cm3/ticket/1068
I've only spent a few minutes here.
Trying to find the relative code and such.
The code is here:
C:\dev2\cm3.2\m3-comm\netobj\tests\perf\src
I found it by looking near the top of the stack in
the bug report -- NetObjTest.m3 -- and
then dir /s/b NetObjTest.m3.
or find . | grep NetObjTest.m3$ on Unix.
It appears that Pickle v1 and v2 are both
available in the same library.
There is INTERFACE Pickle and INTERFACE Pickle2.
It appears netobj can use either.
If you look at the stack in the bug, there is a lot of "v1" stuff.
We provide Quake functions:
readonly proc netobjv1(intf, type) is
...
end
readonly proc Netobjv1(intf, type) is
...
end
readonly proc netobjv2(intf, type) is
...
end
readonly proc netobj(intf, type) is
netobjv1(intf, type)
end
v1 pickles cannot cross endian/wordsize boundaries.
I think the bug is not so much in the pickle code, nor in the netobj code,
but in the test code, or the running of it.
Tests involving v1 won't work crossing endian/wordsize boundaries.
V1 tests probably should still run, and maybe detect the mismatch
and just claim success?
And then v2 should get better coverage?
Any more bugs then?
I was procrastinating on this because I've never done anything with pickles.
- Jay
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20091213/7cc31358/attachment-0001.html>
More information about the M3devel
mailing list