mirror of
https://git.sr.ht/~eliasnaur/gio
synced 2026-07-06 01:45:36 +00:00
ui,ui/draw: fix decoding of negative integers
Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
+4
-4
@@ -44,12 +44,12 @@ func (i *ImageOp) Decode(data []byte, refs []interface{}) {
|
|||||||
}
|
}
|
||||||
sr := image.Rectangle{
|
sr := image.Rectangle{
|
||||||
Min: image.Point{
|
Min: image.Point{
|
||||||
X: int(bo.Uint32(data[1:])),
|
X: int(int32(bo.Uint32(data[1:]))),
|
||||||
Y: int(bo.Uint32(data[5:])),
|
Y: int(int32(bo.Uint32(data[5:]))),
|
||||||
},
|
},
|
||||||
Max: image.Point{
|
Max: image.Point{
|
||||||
X: int(bo.Uint32(data[9:])),
|
X: int(int32(bo.Uint32(data[9:]))),
|
||||||
Y: int(bo.Uint32(data[13:])),
|
Y: int(int32(bo.Uint32(data[13:]))),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
*i = ImageOp{
|
*i = ImageOp{
|
||||||
|
|||||||
@@ -105,7 +105,7 @@ func (op *opAux) decode(data []byte) {
|
|||||||
}
|
}
|
||||||
bo := binary.LittleEndian
|
bo := binary.LittleEndian
|
||||||
*op = opAux{
|
*op = opAux{
|
||||||
len: int(bo.Uint32(data[1:])),
|
len: int(int32(bo.Uint32(data[1:]))),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -114,8 +114,8 @@ func (op *opMacroDef) decode(data []byte) {
|
|||||||
panic("invalid op")
|
panic("invalid op")
|
||||||
}
|
}
|
||||||
bo := binary.LittleEndian
|
bo := binary.LittleEndian
|
||||||
dataIdx := int(bo.Uint32(data[1:]))
|
dataIdx := int(int32(bo.Uint32(data[1:])))
|
||||||
refsIdx := int(bo.Uint32(data[5:]))
|
refsIdx := int(int32(bo.Uint32(data[5:])))
|
||||||
*op = opMacroDef{
|
*op = opMacroDef{
|
||||||
endpc: pc{
|
endpc: pc{
|
||||||
data: dataIdx,
|
data: dataIdx,
|
||||||
@@ -215,9 +215,9 @@ func (m *MacroOp) decode(data []byte, refs []interface{}) {
|
|||||||
panic("invalid op")
|
panic("invalid op")
|
||||||
}
|
}
|
||||||
bo := binary.LittleEndian
|
bo := binary.LittleEndian
|
||||||
dataIdx := int(bo.Uint32(data[1:]))
|
dataIdx := int(int32(bo.Uint32(data[1:])))
|
||||||
refsIdx := int(bo.Uint32(data[5:]))
|
refsIdx := int(int32(bo.Uint32(data[5:])))
|
||||||
version := int(bo.Uint32(data[9:]))
|
version := int(int32(bo.Uint32(data[9:])))
|
||||||
*m = MacroOp{
|
*m = MacroOp{
|
||||||
ops: refs[0].(*Ops),
|
ops: refs[0].(*Ops),
|
||||||
pc: pc{
|
pc: pc{
|
||||||
|
|||||||
Reference in New Issue
Block a user