]> git.sur5r.net Git - openocd/commitdiff
Simplify jtag_execute_queue:
authorzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Mon, 8 Jun 2009 10:56:07 +0000 (10:56 +0000)
committerzwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Mon, 8 Jun 2009 10:56:07 +0000 (10:56 +0000)
- Add static inline jtag_error_clear helper to return and clear jtag_error.
- Use new helper to shrink body of function to two lines.

git-svn-id: svn://svn.berlios.de/openocd/trunk@2117 b42882b7-edfa-0310-969c-e2dbd0fdcd60

src/jtag/jtag.c
src/jtag/jtag.h

index 2caac53075d313f05f517f83d6bcfc9c874bb94b..1038aff635e03ccd0a872e25992f03213d97f686 100644 (file)
@@ -914,11 +914,8 @@ int jtag_get_flush_queue_count(void)
 
 int jtag_execute_queue(void)
 {
-       int retval;
        jtag_execute_queue_noclear();
-       retval=jtag_error;
-       jtag_error=ERROR_OK;
-       return retval;
+       return jtag_error_clear();
 }
 
 static int jtag_reset_callback(enum jtag_event event, void *priv)
index 01ef58cd87318bd3770582508a9a61a3cab24d87..90e8ae0b25932c77319a0916c3fe052acf57b031 100644 (file)
@@ -561,7 +561,16 @@ static __inline__ void jtag_set_error(int error)
        jtag_error=error;
 }
 
-
+/**
+ * Resets jtag_error to ERROR_OK, returning its previous value.
+ * @returns The previous value of @c jtag_error.
+ */
+static inline int jtag_error_clear(void)
+{
+       int temp = jtag_error;
+       jtag_error = ERROR_OK;
+       return temp;
+}
 
 /* can be implemented by hw+sw */
 extern int jtag_power_dropout(int* dropout);