This is an automated email from Gerrit. Peter Stuge (pe...@stuge.se) just uploaded a new patch set to Gerrit, which you can find at http://openocd.zylin.com/894
-- gerrit commit cde657a49768d840c3ecb664cc229fbb75f95421 Author: Peter Stuge <pe...@stuge.se> Date: Thu Oct 4 14:35:18 2012 +0200 rtos: Rewrite rtos_try_next() for readability The new code is almost functionally equivalent to the old. The function now returns 0 instead of -1 if target->rtos has not yet been allocated. All call sites only test for success, and in practise that is also the only thing that matters; if the function successfully iterated to the next RTOS or not. Other than that the only difference is that the code is now readable. Change-Id: I3342826f653b5e46c99ad1f58eec26ff10795c33 Signed-off-by: Peter Stuge <pe...@stuge.se> diff --git a/src/rtos/rtos.c b/src/rtos/rtos.c index b23625b..80f0938 100644 --- a/src/rtos/rtos.c +++ b/src/rtos/rtos.c @@ -446,28 +446,24 @@ int rtos_generic_stack_read(struct target *target, int rtos_try_next(struct target *target) { - int x; + struct rtos *os = target->rtos; + struct rtos_type *type = rtos_types[0]; - if (target->rtos == NULL) - return -1; - - for (x = 0; rtos_types[x]; x++) { - if (target->rtos->type == rtos_types[x]) { - /* found */ - if (rtos_types[x+1] != NULL) { - target->rtos->type = rtos_types[x+1]; - if (target->rtos->symbols != NULL) - free(target->rtos->symbols); - return 1; - } else { - /* No more rtos types */ - return 0; - } + if (!os) + return 0; - } - } - return 0; + while (type && os->type != type) + type++; + if (!type || !++type) + return 0; + + os->type = type; + if (os->symbols) { + free(os->symbols); + os->symbols = NULL; + } + return 1; } static void hex_to_str(char *dst, char *hex_src) -- ------------------------------------------------------------------------------ Don't let slow site performance ruin your business. Deploy New Relic APM Deploy New Relic app performance management and know exactly what is happening inside your Ruby, Python, PHP, Java, and .NET app Try New Relic at no cost today and get our sweet Data Nerd shirt too! http://p.sf.net/sfu/newrelic-dev2dev _______________________________________________ OpenOCD-devel mailing list OpenOCD-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openocd-devel