diff options
Diffstat (limited to 'packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py')
| -rw-r--r-- | packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py | 14 | 
1 files changed, 9 insertions, 5 deletions
| diff --git a/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py b/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py index c0ea841e2a03..0c73bed9ea0a 100644 --- a/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py +++ b/packages/Python/lldbsuite/test/tools/lldb-server/lldbgdbserverutils.py @@ -154,6 +154,7 @@ def expect_lldb_gdbserver_replay(      asserter,      sock,      test_sequence, +    pump_queues,      timeout_seconds,      logger=None):      """Replay socket communication with lldb-gdbserver and verify responses. @@ -193,7 +194,7 @@ def expect_lldb_gdbserver_replay(          return {}      context = {"O_count":0, "O_content":""} -    with socket_packet_pump.SocketPacketPump(sock, logger) as pump: +    with socket_packet_pump.SocketPacketPump(sock, pump_queues, logger) as pump:          # Grab the first sequence entry.          sequence_entry = test_sequence.entries.pop(0) @@ -220,14 +221,14 @@ def expect_lldb_gdbserver_replay(                  if sequence_entry.is_output_matcher():                      try:                          # Grab next entry from the output queue. -                        content = pump.output_queue().get(True, timeout_seconds) +                        content = pump_queues.output_queue().get(True, timeout_seconds)                      except queue.Empty:                          if logger:                              logger.warning("timeout waiting for stub output (accumulated output:{})".format(pump.get_accumulated_output()))                          raise Exception("timed out while waiting for output match (accumulated output: {})".format(pump.get_accumulated_output()))                  else:                      try: -                        content = pump.packet_queue().get(True, timeout_seconds) +                        content = pump_queues.packet_queue().get(True, timeout_seconds)                      except queue.Empty:                          if logger:                              logger.warning("timeout waiting for packet match (receive buffer: {})".format(pump.get_receive_buffer())) @@ -386,7 +387,10 @@ def pack_register_hex(endian, value, byte_size=None):          return retval      elif endian == 'big': -        retval = value.encode("hex") +        retval = "" +        while value != 0: +            retval = "{:02x}".format(value & 0xff) + retval +            value = value >> 8          if byte_size:              # Add zero-fill to the left/front (MSB side) of the value.              retval = ("00" * (byte_size - len(retval)/2)) + retval @@ -783,7 +787,7 @@ class GdbRemoteTestSequence(object):                      regex = line.get("regex", None)                      # Compile the regex.                      if regex and (type(regex) == str): -                        regex = re.compile(regex) +                        regex = re.compile(regex, re.DOTALL)                      regex_mode = line.get("regex_mode", "match")                      capture = line.get("capture", None) | 
