filemem: fix fwrite() return check in fm_write();

test `ferror()` also in `fm_err()` if `err` zero and file
NetBSD: add instructions and some workarounds (`getopt_long_only()`
  in particular)
qzint: check `__GNUC__` version for "-Wstringop-truncation"
  suppression
This commit is contained in:
gitlost 2023-12-29 19:34:44 +00:00
parent 98f86727cc
commit 3950b49050
12 changed files with 64 additions and 29 deletions

View file

@ -34,7 +34,6 @@
#include <math.h>
#include <sys/stat.h>
#include "testcommon.h"
#include "../common.h"
static void test_checks(const testCtx *const p_ctx) {
int debug = p_ctx->debug;
@ -946,14 +945,20 @@ static void test_encode_file_unreadable(const testCtx *const p_ctx) {
/* #181 Nico Gunkel OSS-Fuzz (buffer not freed on fread() error) Note: unable to reproduce fread() error using this method */
static void test_encode_file_directory(const testCtx *const p_ctx) {
#ifndef __NetBSD__
int ret;
struct zint_symbol *symbol;
char dirname[] = "in_dir";
#endif
(void)p_ctx;
testStart("test_encode_file_directory");
#ifdef __NetBSD__
/* Reading a directory works on NetBSD, and get `code128()` ZINT_ERROR_TOO_LONG instead */
testSkip("Test not implemented on NetBSD");
#else
symbol = ZBarcode_Create();
assert_nonnull(symbol, "Symbol not created\n");
@ -970,6 +975,7 @@ static void test_encode_file_directory(const testCtx *const p_ctx) {
ZBarcode_Delete(symbol);
testFinish();
#endif /* __NetBSD__ */
}
static void test_encode_file(const testCtx *const p_ctx) {

View file

@ -123,7 +123,7 @@ static void test_colour_get_rgb(const testCtx *const p_ctx) {
unsigned char red = 0, green = 0, blue = 0, alpha = 0, rgb_alpha = 0;
int cyan, magenta, yellow, black;
int have_alpha;
char rgb[9];
char rgb[16];
char cmyk[16];
if (testContinue(p_ctx, i)) continue;
@ -181,7 +181,7 @@ static void test_colour_get_cmyk(const testCtx *const p_ctx) {
for (i = 0; i < data_size; i++) {
int cyan, magenta, yellow, black;
unsigned char red, green, blue, alpha, rgb_alpha;
char rgb[9];
char rgb[16];
if (testContinue(p_ctx, i)) continue;