FreeRTOS is distributed in the hope that it will be useful, but WITHOUT\r
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\r
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for\r
- more details. You should have received a copy of the GNU General Public \r
- License and the FreeRTOS license exception along with FreeRTOS; if not it \r
- can be viewed here: http://www.freertos.org/a00114.html and also obtained \r
+ more details. You should have received a copy of the GNU General Public\r
+ License and the FreeRTOS license exception along with FreeRTOS; if not it\r
+ can be viewed here: http://www.freertos.org/a00114.html and also obtained\r
by writing to Richard Barry, contact details for whom are available on the\r
FreeRTOS WEB site.\r
\r
/* Any unexpected behaviour sets xErrorStatus to fail and log the line that\r
caused the error in xErrorLine. */\r
static portBASE_TYPE xErrorStatus = pdPASS;\r
-static unsigned portBASE_TYPE xErrorLine = ( unsigned portBASE_TYPE ) 0;\r
+static volatile unsigned portBASE_TYPE xErrorLine = ( unsigned portBASE_TYPE ) 0;\r
\r
/* Used for sequencing between tasks. */\r
static portBASE_TYPE xWasSuspended = pdFALSE;\r
static void prvLowerPriorityNormallyEmptyTask( void *pvParameters )\r
{\r
unsigned portBASE_TYPE uxValue, uxRxed;\r
-portBASE_TYPE xQueueStatus;\r
\r
/* The parameters are not being used so avoid compiler warnings. */\r
( void ) pvParameters;\r
\r
for( ;; )\r
{\r
- if( ( xQueueStatus = xQueueReceive( xNormallyEmptyQueue, &uxRxed, intqONE_TICK_DELAY ) ) != errQUEUE_EMPTY )\r
+ if( xQueueReceive( xNormallyEmptyQueue, &uxRxed, intqONE_TICK_DELAY ) != errQUEUE_EMPTY )\r
{\r
/* We should only obtain a value when the high priority task is\r
suspended. */\r
static void prv1stHigherPriorityNormallyFullTask( void *pvParameters )\r
{\r
unsigned portBASE_TYPE uxValueToTx, ux;\r
-portBASE_TYPE xQueueStatus;\r
\r
/* The parameters are not being used so avoid compiler warnings. */\r
( void ) pvParameters;\r
}\r
portEXIT_CRITICAL();\r
\r
- if( ( xQueueStatus = xQueueSend( xNormallyFullQueue, &uxValueToTx, intqSHORT_DELAY ) ) != pdPASS )\r
+ if( xQueueSend( xNormallyFullQueue, &uxValueToTx, intqSHORT_DELAY ) != pdPASS )\r
{\r
/* intqHIGH_PRIORITY_TASK2 is never suspended so we would not\r
expect it to ever time out. */\r
static void prv2ndHigherPriorityNormallyFullTask( void *pvParameters )\r
{\r
unsigned portBASE_TYPE uxValueToTx, ux;\r
-portBASE_TYPE xQueueStatus;\r
\r
/* The parameters are not being used so avoid compiler warnings. */\r
( void ) pvParameters;\r
}\r
portEXIT_CRITICAL();\r
\r
- if( ( xQueueStatus = xQueueSend( xNormallyFullQueue, &uxValueToTx, intqSHORT_DELAY ) ) != pdPASS )\r
+ if( xQueueSend( xNormallyFullQueue, &uxValueToTx, intqSHORT_DELAY ) != pdPASS )\r
{\r
if( xWasSuspended != pdTRUE )\r
{\r
static void prvLowerPriorityNormallyFullTask( void *pvParameters )\r
{\r
unsigned portBASE_TYPE uxValue, uxTxed = 9999;\r
-portBASE_TYPE xQueueStatus;\r
\r
/* The parameters are not being used so avoid compiler warnings. */\r
( void ) pvParameters;\r
\r
for( ;; )\r
{\r
- if( ( xQueueStatus = xQueueSend( xNormallyFullQueue, &uxTxed, intqONE_TICK_DELAY ) ) != errQUEUE_FULL )\r
+ if( xQueueSend( xNormallyFullQueue, &uxTxed, intqONE_TICK_DELAY ) != errQUEUE_FULL )\r
{\r
/* We would only expect to succeed when the higher priority task\r
is suspended. */\r