@@ -215,34 +215,34 @@ static int do_subneg(struct ios_ops *ios, unsigned char *buf, int len)
215215static int logfd = -1 ;
216216char * answerback ;
217217
218- static void write_receive_buf (const unsigned char * buf , int len ) {
218+ static void write_receive_buf (const unsigned char * buf , int len )
219+ {
219220 if (!len ) return ;
220221 if (timestamps ) {
221- if (buf [0 ] == '\n' || buf [0 ] == '\r' ) {
222- new_line = true;
223- write (STDOUT_FILENO , buf , len );
224- } else {
225- if (new_line ) {
226- new_line = false;
227- char tbuf [30 ];
228- memset (tbuf , 0 , sizeof (tbuf ));
229- gettimeofday (& now , NULL );
230- timeinfo = gmtime (& now .tv_sec );
231- snprintf (tbuf , sizeof (tbuf ),
232- "[%02d-%02d-%02d %02d:%02d:%02d:%03d] " ,
233- timeinfo -> tm_mday , timeinfo -> tm_mon + 1 ,
234- timeinfo -> tm_year + 1900 , timeinfo -> tm_hour ,
235- timeinfo -> tm_min , timeinfo -> tm_sec , now .tv_usec / 1000 );
236- write (STDOUT_FILENO , tbuf , strlen (tbuf ));
222+ if (buf [len - 1 ] == '\n' || buf [len - 1 ] == '\r' ) {
223+ new_line = true;
237224 write (STDOUT_FILENO , buf , len );
238225 } else {
239- write (STDOUT_FILENO , buf , len );
226+ if (new_line ) {
227+ new_line = false;
228+ char tbuf [30 ];
229+ memset (tbuf , 0 , sizeof (tbuf ));
230+ gettimeofday (& now , NULL );
231+ timeinfo = gmtime (& now .tv_sec );
232+ snprintf (tbuf , sizeof (tbuf ),
233+ "[%02d-%02d-%02d %02d:%02d:%02d:%03d] " ,
234+ timeinfo -> tm_mday , timeinfo -> tm_mon + 1 ,
235+ timeinfo -> tm_year + 1900 , timeinfo -> tm_hour ,
236+ timeinfo -> tm_min , timeinfo -> tm_sec , now .tv_usec / 1000 );
237+ write (STDOUT_FILENO , tbuf , strlen (tbuf ));
238+ write (STDOUT_FILENO , buf , len );
239+ } else {
240+ write (STDOUT_FILENO , buf , len );
241+ }
240242 }
241- }
242243 } else {
243244 write (STDOUT_FILENO , buf , len );
244245 }
245-
246246 if (logfd >= 0 ) write (logfd , buf , len );
247247}
248248
0 commit comments