If ratp_establish() fails we would be accessing the ratp_internal
struct after having disposed it.

Signed-off-by: Aleksander Morgado <aleksan...@aleksander.es>
---
 lib/ratp.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/ratp.c b/lib/ratp.c
index d596a0e8b..22e83636f 100644
--- a/lib/ratp.c
+++ b/lib/ratp.c
@@ -1658,6 +1658,8 @@ int ratp_establish(struct ratp *ratp, bool active, int 
timeout_ms)
        }
 
 out:
+       ri->in_ratp--;
+
        if (ret) {
                free(ri->recvbuf);
                free(ri->sendbuf);
@@ -1665,8 +1667,6 @@ out:
                ratp->internal = NULL;
        }
 
-       ri->in_ratp--;
-
        return ret;
 }
 
-- 
2.13.0


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to