contrib: rpc_examples: python: fix memory retrieval

mem2array returns a Tcl (associative) array and so the order of elements
is not guaranteed. Treat it as such.

Change-Id: Ie4d1219faac1e60247ca13bc2eedf22041a9a9e9
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Reviewed-on: http://openocd.zylin.com/4487
Tested-by: jenkins
Reviewed-by: Christopher Head <chead@zaber.com>
This commit is contained in:
Paul Fertser 2018-04-09 23:00:10 +03:00
parent 5202d82a95
commit 92c50fda2b
1 changed files with 3 additions and 2 deletions

View File

@ -92,9 +92,10 @@ class OpenOcd:
self.send("array unset output") # better to clear the array before
self.send("mem2array output %d 0x%x %d" % (wordLen, address, n))
output = self.send("ocd_echo $output").split(" ")
output = [*map(int, self.send("ocd_echo $output").split(" "))]
d = dict([tuple(output[i:i + 2]) for i in range(0, len(output), 2)])
return [int(output[2*i+1]) for i in range(len(output)//2)]
return [d[k] for k in sorted(d.keys())]
def writeVariable(self, address, value):
assert value is not None