diff options
| author | MateuszOkulus <mateusz.okulus@protonmail.com> | 2020-04-24 09:20:34 +0200 | 
|---|---|---|
| committer | MateuszOkulus <mateusz.okulus@protonmail.com> | 2020-04-24 09:20:34 +0200 | 
| commit | 6bbd6545f422bab6dfd341d88e99316f4cdab7ac (patch) | |
| tree | 8b1c52a0d7c3e8f883100e34ba8aea0c9ee15af1 | |
| parent | help-icon refixed after reversion (diff) | |
| download | dwmblocks-6bbd6545f422bab6dfd341d88e99316f4cdab7ac.tar.gz dwmblocks-6bbd6545f422bab6dfd341d88e99316f4cdab7ac.tar.bz2 dwmblocks-6bbd6545f422bab6dfd341d88e99316f4cdab7ac.tar.xz dwmblocks-6bbd6545f422bab6dfd341d88e99316f4cdab7ac.tar.zst dwmblocks-6bbd6545f422bab6dfd341d88e99316f4cdab7ac.zip | |
Remove newlines from command output
| -rw-r--r-- | dwmblocks.c | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/dwmblocks.c b/dwmblocks.c index 0cd0b54..de872bf 100644 --- a/dwmblocks.c +++ b/dwmblocks.c @@ -16,6 +16,7 @@ typedef struct {  void sighandler(int num);  void buttonhandler(int sig, siginfo_t *si, void *ucontext);  void replace(char *str, char old, char new); +void remove_all(char *str, char to_remove);  void getcmds(int time);  #ifndef __OpenBSD__  void getsigcmds(int signal); @@ -48,6 +49,19 @@ void replace(char *str, char old, char new)  			str[i] = new;  } +void remove_all(char *str, char to_remove) { +	char *read = str; +	char *write = str; +	while (*read) { +		if (*read == to_remove) { +			read++; +			*write = *read; +		} +		read++; +		write++; +	} +} +  //opens process *cmd and stores output in *output  void getcmd(const Block *block, char *output)  { @@ -77,6 +91,7 @@ void getcmd(const Block *block, char *output)  	char c;  	int i = strlen(block->icon);  	fgets(output+i, CMDLENGTH-i, cmdf); +	remove_all(output, '\n');  	i = strlen(output);  	if (delim != '\0' && i)  		output[i++] = delim; | 
