... | ... |
@@ -812,6 +812,7 @@ const char* cli_strerror(int errnum, char *buf, size_t len) |
812 | 812 |
#endif |
813 | 813 |
err = strerror(errnum); |
814 | 814 |
strncpy(buf, err, len); |
815 |
+ buf[len-1] = '\0'; /* just in case */ |
|
815 | 816 |
# ifdef CL_THREAD_SAFE |
816 | 817 |
pthread_mutex_unlock(&cli_strerror_mutex); |
817 | 818 |
#endif |
... | ... |
@@ -644,7 +644,6 @@ int cli_scanxar(cli_ctx *ctx) |
644 | 644 |
if (blockp == NULL) { |
645 | 645 |
char errbuff[128]; |
646 | 646 |
cli_strerror(errno, errbuff, sizeof(errbuff)); |
647 |
- errbuff[sizeof(errbuff)-1] = '\0'; |
|
648 | 647 |
cli_errmsg("cli_scanxar: Can't read %li bytes @ %li, errno:%s.\n", |
649 | 648 |
length, at, &errbuff); |
650 | 649 |
rc = CL_EREAD; |
... | ... |
@@ -680,7 +679,6 @@ int cli_scanxar(cli_ctx *ctx) |
680 | 680 |
if (lz.next_in == NULL) { |
681 | 681 |
char errbuff[128]; |
682 | 682 |
cli_strerror(errno, errbuff, sizeof(errbuff)); |
683 |
- errbuff[sizeof(errbuff)-1] = '\0'; |
|
684 | 683 |
cli_errmsg("cli_scanxar: Can't read %li bytes @ %li, errno: %s.\n", |
685 | 684 |
length, at, &errbuff); |
686 | 685 |
rc = CL_EREAD; |
... | ... |
@@ -756,7 +754,6 @@ int cli_scanxar(cli_ctx *ctx) |
756 | 756 |
if (!(blockp = (void*)fmap_need_off_once(map, at, length))) { |
757 | 757 |
char errbuff[128]; |
758 | 758 |
cli_strerror(errno, errbuff, sizeof(errbuff)); |
759 |
- errbuff[sizeof(errbuff)-1] = '\0'; |
|
760 | 759 |
cli_errmsg("cli_scanxar: Can't read %li bytes @ %li, errno:%s.\n", |
761 | 760 |
length, at, &errbuff); |
762 | 761 |
rc = CL_EREAD; |