]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS-Plus/Source/FreeRTOS-Plus-Trace/streamports/TCPIP/trcStreamingPort.c
Update trace recorder code to the latest.
[freertos] / FreeRTOS-Plus / Source / FreeRTOS-Plus-Trace / streamports / TCPIP / trcStreamingPort.c
index 487aede75e5e7648741f797a5534bd74460a0da0..d420d121a82c2a783d7d646c23240c3234866a74 100644 (file)
@@ -1,5 +1,5 @@
 /*******************************************************************************\r
- * Trace Recorder Library for Tracealyzer v3.1.2\r
+ * Trace Recorder Library for Tracealyzer v4.1.5\r
  * Percepio AB, www.percepio.com\r
  *\r
  * trcStreamingPort.c\r
@@ -41,7 +41,7 @@
  *\r
  * Tabs are used for indent in this file (1 tab = 4 spaces)\r
  *\r
- * Copyright Percepio AB, 2017.\r
+ * Copyright Percepio AB, 2018.\r
  * www.percepio.com\r
  ******************************************************************************/\r
 \r
@@ -50,7 +50,7 @@
 #if (TRC_CFG_RECORDER_MODE == TRC_RECORDER_MODE_STREAMING)  \r
 #if (TRC_USE_TRACEALYZER_RECORDER == 1)\r
        \r
-/* TCP/IP includes */\r
+/* TCP/IP includes - for lwIP in this case */\r
 #include "lwip/tcpip.h"\r
 #include "lwip/sockets.h"\r
 \r
@@ -68,11 +68,14 @@ int32_t trcSocketSend( void* data, int32_t size, int32_t* bytesWritten )
   if (new_sd < 0)\r
     return -1;\r
   \r
+  if (bytesWritten == NULL)\r
+       return -1;\r
+  \r
   *bytesWritten = send( new_sd, data, size, 0 );\r
   if (*bytesWritten < 0)\r
   {\r
     /* EWOULDBLOCK may be expected when buffers are full */\r
-    if (errno != EWOULDBLOCK)\r
+    if (errno != 0 && errno != EWOULDBLOCK)\r
     {\r
       closesocket(new_sd);\r
       new_sd = -1;\r
@@ -94,7 +97,7 @@ int32_t trcSocketReceive( void* data, int32_t size, int32_t* bytesRead )
   if ( *bytesRead < 0 )\r
   {\r
     /* EWOULDBLOCK may be expected when there is no data to receive */\r
-    if (errno != EWOULDBLOCK)\r
+    if (errno != 0 && errno != EWOULDBLOCK)\r
     {\r
       closesocket(new_sd);\r
       new_sd = -1;\r