diff --git a/library/ssl_tls.c b/library/ssl_tls.c
index 47723cc..7f82fa0 100644
--- a/library/ssl_tls.c
+++ b/library/ssl_tls.c
@@ -2164,6 +2164,9 @@
         }
     }
 
+    n = ( len < SSL_MAX_CONTENT_LEN )
+        ? len : SSL_MAX_CONTENT_LEN;
+
     if( ssl->out_left != 0 )
     {
         if( ( ret = ssl_flush_output( ssl ) ) != 0 )
@@ -2172,18 +2175,17 @@
             return( ret );
         }
     }
-
-    n = ( len < SSL_MAX_CONTENT_LEN )
-        ? len : SSL_MAX_CONTENT_LEN;
-
-    ssl->out_msglen  = n;
-    ssl->out_msgtype = SSL_MSG_APPLICATION_DATA;
-    memcpy( ssl->out_msg, buf, n );
-
-    if( ( ret = ssl_write_record( ssl ) ) != 0 )
+    else
     {
-        SSL_DEBUG_RET( 1, "ssl_write_record", ret );
-        return( ret );
+        ssl->out_msglen  = n;
+        ssl->out_msgtype = SSL_MSG_APPLICATION_DATA;
+        memcpy( ssl->out_msg, buf, n );
+
+        if( ( ret = ssl_write_record( ssl ) ) != 0 )
+        {
+            SSL_DEBUG_RET( 1, "ssl_write_record", ret );
+            return( ret );
+        }
     }
 
     SSL_DEBUG_MSG( 2, ( "<= write" ) );
