diff options
| author | Daniel Friesel <derf@finalrewind.org> | 2017-10-03 19:58:27 +0200 | 
|---|---|---|
| committer | Daniel Friesel <derf@finalrewind.org> | 2017-10-03 19:58:27 +0200 | 
| commit | de36c62308fb982f9794db87a856fa6aae042ce6 (patch) | |
| tree | 54969d668b47aa15602511f5d3b5a2fd7fb9dc8c | |
| parent | 4342eab3c36ed87085fedf87bd0641889051c388 (diff) | |
Make shell_escape available as a generic utility function
| -rw-r--r-- | src/slideshow.c | 23 | ||||
| -rw-r--r-- | src/utils.c | 23 | ||||
| -rw-r--r-- | src/utils.h | 1 | 
3 files changed, 24 insertions, 23 deletions
| diff --git a/src/slideshow.c b/src/slideshow.c index 4a71dc3..db389d5 100644 --- a/src/slideshow.c +++ b/src/slideshow.c @@ -464,29 +464,6 @@ void feh_action_run(feh_file * file, char *action, winwidget winwid)  	return;  } -char *shell_escape(char *input) -{ -	static char ret[1024]; -	unsigned int out = 0, in = 0; - -	ret[out++] = '\''; -	for (in = 0; input[in] && (out < (sizeof(ret) - 7)); in++) { -		if (input[in] == '\'') { -			ret[out++] = '\''; -			ret[out++] = '"'; -			ret[out++] = '\''; -			ret[out++] = '"'; -			ret[out++] = '\''; -		} -		else -			ret[out++] = input[in]; -	} -	ret[out++] = '\''; -	ret[out++] = '\0'; - -	return ret; -} -  char *format_size(int size)  {  	static char ret[5]; diff --git a/src/utils.c b/src/utils.c index dfae909..ec30d4a 100644 --- a/src/utils.c +++ b/src/utils.c @@ -201,3 +201,26 @@ char *ereadfile(char *path)  	return estrdup(buffer);  } + +char *shell_escape(char *input) +{ +	static char ret[1024]; +	unsigned int out = 0, in = 0; + +	ret[out++] = '\''; +	for (in = 0; input[in] && (out < (sizeof(ret) - 7)); in++) { +		if (input[in] == '\'') { +			ret[out++] = '\''; +			ret[out++] = '"'; +			ret[out++] = '\''; +			ret[out++] = '"'; +			ret[out++] = '\''; +		} +		else +			ret[out++] = input[in]; +	} +	ret[out++] = '\''; +	ret[out++] = '\0'; + +	return ret; +} diff --git a/src/utils.h b/src/utils.h index c0d243b..22cbbf8 100644 --- a/src/utils.h +++ b/src/utils.h @@ -46,6 +46,7 @@ char *estrjoin(const char *separator, ...);  char path_is_url(char *path);  char *feh_unique_filename(char *path, char *basename);  char *ereadfile(char *path); +char *shell_escape(char *input);  #define ESTRAPPEND(a,b) \    {\ | 
