Skip to content
  • Christian Eggers's avatar
    RTOS: Unify wipe-out of thread list · d36889e6
    Christian Eggers authored
    
    
    Each RTOS implementation uses it's own (similar) code to free
    the thread list. There are some additional issues:
    
    <--->
    if (pointer != NULL)
    	free(pointer);
    <--->
    This is not necessary, free(NULL) is perfectly ok.
    
    <--->
    free(rtos->thread_details);
    rtos->thread_details = NULL;
    rtos->thread_count = 0;
    <--->
    The 3rd line has been missing for all RTOS but ChibiOs. There are paths
    in the code where rtos->thread_count is never set to NULL, which can
    lead to null pointer dereference of rtos->thread_details.
    
    Change-Id: I6f7045c3d4518b925cb80dd5c907a566536b34ad
    Signed-off-by: default avatarChristian Eggers <ceggers@gmx.de>
    ---
    Changelog:
    v7:
    - rtos_wipe_threadlist() --> rtos_free_threadlist()
    - removed non related changes in gdb_server.c from this patch
    v3:
    - Removed world "topic" from first line of commit message
    v2:
    - typo: "whipe" --> "wipe"
    Reviewed-on: http://openocd.zylin.com/1916
    
    
    Tested-by: jenkins
    Reviewed-by: default avatarSpencer Oliver <spen@spen-soft.co.uk>
    d36889e6