diff options
author | Daniel Friesel <derf@chaosdorf.de> | 2017-04-02 15:03:12 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-02 15:03:12 +0200 |
commit | b6bc4ef76aa1d06ba4af913dc9a112d5b14c4bba (patch) | |
tree | d4d29c4544b283e0d2bec3fcaaefd6a25cf2e3e5 | |
parent | 78a840ed30c454d5cfa2acb482fb31e08a637ce6 (diff) | |
parent | 575b9345c87f22349c948fcc814c301816315a71 (diff) |
Merge pull request #288 from stoeckmann/strncpy
Always terminate strncpy results with '\0'.
-rw-r--r-- | src/collage.c | 6 | ||||
-rw-r--r-- | src/index.c | 6 | ||||
-rw-r--r-- | src/thumbnail.c | 6 |
3 files changed, 12 insertions, 6 deletions
diff --git a/src/collage.c b/src/collage.c index bcb30fa..b975136 100644 --- a/src/collage.c +++ b/src/collage.c @@ -191,8 +191,10 @@ void init_collage_mode(void) char output_buf[1024]; if (opt.output_dir) snprintf(output_buf, 1024, "%s/%s", opt.output_dir, opt.output_file); - else - strncpy(output_buf, opt.output_file, 1024); + else { + strncpy(output_buf, opt.output_file, 1023); + output_buf[1023] = '\0'; + } gib_imlib_save_image(im_main, output_buf); if (opt.verbose) { int tw, th; diff --git a/src/index.c b/src/index.c index a71744d..7a2f5fc 100644 --- a/src/index.c +++ b/src/index.c @@ -324,8 +324,10 @@ void init_index_mode(void) if (opt.output_dir) snprintf(output_buf, 1024, "%s/%s", opt.output_dir, opt.output_file); - else - strncpy(output_buf, opt.output_file, 1024); + else { + strncpy(output_buf, opt.output_file, 1023); + output_buf[1023] = '\0'; + } gib_imlib_save_image_with_error_return(im_main, output_buf, &err); if (err) { diff --git a/src/thumbnail.c b/src/thumbnail.c index c9cc24f..43168c4 100644 --- a/src/thumbnail.c +++ b/src/thumbnail.c @@ -381,8 +381,10 @@ void init_thumbnail_mode(void) if (opt.output_dir) snprintf(output_buf, 1024, "%s/%s", opt.output_dir, opt.output_file); - else - strncpy(output_buf, opt.output_file, 1024); + else { + strncpy(output_buf, opt.output_file, 1023); + output_buf[1023] = '\0'; + } gib_imlib_save_image_with_error_return(td.im_main, output_buf, &err); if (err) { feh_imlib_print_load_error(output_buf, td.im_main, err); |