summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPixel <pixel@nobis-crew.org>2009-12-28 00:19:19 +0100
committerPixel <pixel@nobis-crew.org>2009-12-28 00:19:19 +0100
commit3085628ad505a930d2b542bd65941f2b62b979ae (patch)
treef4bfc8fe8d54dd17d5dc144b9a2314d4dfbbb40f
parent6a1356a266e376bee112452a515f61ac42d2556f (diff)
Completing a bit the struct display.
-rw-r--r--dalos-struct.lua15
1 files changed, 7 insertions, 8 deletions
diff --git a/dalos-struct.lua b/dalos-struct.lua
index d3e0080..189c3be 100644
--- a/dalos-struct.lua
+++ b/dalos-struct.lua
@@ -74,18 +74,21 @@ dalosp.struct = {
local v
if t == "int8" then
- v = h:readU8()
- return v > 127 and v - 256 or v
+ return h:read8()
elseif t == "uint8" then
return h:readU8()
elseif t == "int16" then
+ return h:read16()
elseif t == "uint16" then
return h:readU16()
elseif t == "int32" then
+ return h:read32()
elseif t == "uint32" then
return h:readU32()
elseif t == "int64" then
+ return h:read64()
elseif t == "uint64" then
+ return h:readU64()
elseif t == "float" then
return h:readFloat()
elseif t == "double" then
@@ -99,11 +102,7 @@ dalosp.struct = {
until b == 0
return v
elseif t == "nascii" then
- v = ""
- for i = 1, size do
- v = v .. string.char(h:readU8())
- end
- return v
+ return h:readstring(size)
end
return 0
@@ -387,7 +386,7 @@ dalosp.struct = {
end,
act_value_cb = function (self, lin, col)
- if lin == 0 then if col == 1 then return "Field" elseif col == 2 return "Value" end end
+ if lin == 0 then if col == 1 then return "Field" elseif col == 2 then return "Value" end end
if col == 0 then return nil end
local entry = self.struct.extra.entries[lin]