Output raw to standard error if it is not a terminal
This commit is contained in:
		
							parent
							
								
									d85c1c3f96
								
							
						
					
					
						commit
						2a6e3f2d02
					
				@ -90,6 +90,9 @@ the same as the nickname.
 | 
				
			|||||||
Show raw IRC protocol in the
 | 
					Show raw IRC protocol in the
 | 
				
			||||||
.Sy <raw>
 | 
					.Sy <raw>
 | 
				
			||||||
window.
 | 
					window.
 | 
				
			||||||
 | 
					If standard error is not a terminal,
 | 
				
			||||||
 | 
					output raw IRC protocol
 | 
				
			||||||
 | 
					to standard error.
 | 
				
			||||||
.
 | 
					.
 | 
				
			||||||
.It Fl w Ar pass
 | 
					.It Fl w Ar pass
 | 
				
			||||||
Log in with
 | 
					Log in with
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								irc.c
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								irc.c
									
									
									
									
									
								
							@ -111,6 +111,7 @@ void ircFmt(const char *format, ...) {
 | 
				
			|||||||
	va_end(ap);
 | 
						va_end(ap);
 | 
				
			||||||
	if (!buf) err(EX_OSERR, "vasprintf");
 | 
						if (!buf) err(EX_OSERR, "vasprintf");
 | 
				
			||||||
	if (self.raw) {
 | 
						if (self.raw) {
 | 
				
			||||||
 | 
							if (!isatty(STDERR_FILENO)) fprintf(stderr, "<<< %.*s\n", len - 2, buf);
 | 
				
			||||||
		uiFmt(TagRaw, UICold, "\3%d<<<\3 %.*s", IRCWhite, len - 2, buf);
 | 
							uiFmt(TagRaw, UICold, "\3%d<<<\3 %.*s", IRCWhite, len - 2, buf);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	ircWrite(buf, len);
 | 
						ircWrite(buf, len);
 | 
				
			||||||
@ -142,6 +143,7 @@ retry:
 | 
				
			|||||||
	while (NULL != (crlf = memmem(line, &buf[len] - line, "\r\n", 2))) {
 | 
						while (NULL != (crlf = memmem(line, &buf[len] - line, "\r\n", 2))) {
 | 
				
			||||||
		crlf[0] = '\0';
 | 
							crlf[0] = '\0';
 | 
				
			||||||
		if (self.raw) {
 | 
							if (self.raw) {
 | 
				
			||||||
 | 
								if (!isatty(STDERR_FILENO)) fprintf(stderr, ">>> %s\n", line);
 | 
				
			||||||
			uiFmt(TagRaw, UICold, "\3%d>>>\3 %s", IRCGray, line);
 | 
								uiFmt(TagRaw, UICold, "\3%d>>>\3 %s", IRCGray, line);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		handle(line);
 | 
							handle(line);
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user