target/espressif: fix clang report on list use
commit8670ad4caa705c460972badbd0fc28aa98c41866
authorAntonio Borneo <borneo.antonio@gmail.com>
Fri, 14 Apr 2023 22:25:54 +0000 (15 00:25 +0200)
committerAntonio Borneo <borneo.antonio@gmail.com>
Sun, 30 Apr 2023 14:52:36 +0000 (30 14:52 +0000)
tree0dea5e140abcea3e957f6aebf3f32b90a936573a
parentc1dc7935f78973e89dfe10e5b93238ae3f4eacd3
target/espressif: fix clang report on list use

It looks like a false positive.
Scan-build considers as possible to:
- have list_empty() return false;
- list_for_each_safe() to not execute any loop, thus not assigning
  a non-NULL value to 'block';
- the NULL pointer 'block' is passed to list_del().
This is not possible because with list_empty(), the loop runs at
least once.

Rewrite the function to simplify the code and making it easier for
scan-build to check it.

This also drops an incorrect use of list_for_each_safe(), where
the 'safe' version was not required.

Change-Id: Ia8b1d221cf9df73db1196e3f51986023dcaf78eb
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Fixes: 8d1dcf293a0c ("target/espressif: add application tracing functionality over JTAG")
Reviewed-on: https://review.openocd.org/c/openocd/+/7608
Reviewed-by: Erhan Kurubas <erhan.kurubas@espressif.com>
Tested-by: jenkins
src/target/espressif/esp32_apptrace.c