[RISU,02/11] reginfo.c: always return 1 on OP_TESTEND

Message ID 20170704144859.17644-3-alex.bennee@linaro.org
State New
Headers show
Series
  • Misc fixes, documentation and patterns
Related show

Commit Message

Alex Bennée July 4, 2017, 2:48 p.m.
In the master/apprentice setup the response byte of 1 is returned by
write_fn. However when tracing it will happily report 0 as it
successfully writes the last bytes. To avoid running of the end when
tracing we just always return 1 at this point.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

---
 reginfo.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

-- 
2.13.0

Patch

diff --git a/reginfo.c b/reginfo.c
index d9d37b3..76f24f9 100644
--- a/reginfo.c
+++ b/reginfo.c
@@ -39,7 +39,10 @@  int send_register_info(write_fn write_fn, void *uc)
 
     switch (op) {
     case OP_TESTEND:
-        return write_fn(&ri, sizeof(ri));
+        write_fn(&ri, sizeof(ri));
+        /* if we are tracing write_fn will return 0 unlike a remote
+           end, hence we force return of 1 here */
+        return 1;
     case OP_SETMEMBLOCK:
         memblock = (void *)(uintptr_t)get_reginfo_paramreg(&ri);
         break;