M .builds/alpine-latest.yml => .builds/alpine-latest.yml +66 -12
@@ 6,8 6,15 @@
image: alpine/latest
packages:
+ - clang15-analyzer
+ - llvm15
- reuse
- meson
+ - git-subtree
+ - hut
+ - jq
+ - valgrind
+
- cairo-dev
- libinput-dev
- eudev-dev
@@ 15,31 22,78 @@ packages:
- glu-dev
- glfw-dev
- libvterm-dev
- # - fontconfig-dev
environment:
project: d2tk
+ CI_SCAN_BUILD_OPTS: -disable-checker security.insecureAPI.vfork -disable-checker unix.Vfork --exclude nanovg --exclude pugl
+
+secrets:
+ - 0545580c-42ac-4700-b322-4e9df924eb07 # runner-ssh
+ - 5fe806cd-3af4-4588-9898-8115d9262144 # hut-config
+ - d6d10b2a-542a-4b45-b1be-6ef30a8ab558 # git-config
+
+sources:
+ - https://git.open-music-kontrollers.ch/~hp/ci
tasks:
- - setup: |
- cd "${project}"
- meson setup build \
+ - gcc: |
+ . ~/ci/activate
+
+ ci-meson gcc setup \
+ -Dbuild-examples=true \
+ -Duse-backend-cairo=enabled \
+ -Duse-backend-nanovg=enabled \
+ -Duse-frontend-fbdev=enabled \
+ -Duse-frontend-pugl=enabled \
+ -Duse-frontend-glfw=enabled \
+ -Duse-fontconfig=disabled \
+ -Duse-evdev=enabled
+ ci-meson gcc build
+ ci-meson gcc test
+ ci-meson gcc memcheck
+
+ - clang: |
+ . ~/ci/activate
+
+ ci-meson clang setup \
+ -Dbuild-examples=true \
-Duse-backend-cairo=enabled \
-Duse-backend-nanovg=enabled \
-Duse-frontend-fbdev=enabled \
-Duse-frontend-pugl=enabled \
-Duse-frontend-glfw=enabled \
-Duse-fontconfig=disabled \
- -Duse-evdev=enabled \
- - build: |
- cd "${project}"
- ninja -C build
- - test: |
- cd "${project}"
- ninja -C build test
+ -Duse-evdev=enabled
+ ci-meson clang build
+ ci-meson clang test
+ ci-meson clang memcheck
+
+ - analyzer: |
+ . ~/ci/activate
+
+ ci-meson analyzer setup \
+ -Dbuild-examples=true \
+ -Duse-backend-cairo=enabled \
+ -Duse-backend-nanovg=enabled \
+ -Duse-frontend-fbdev=enabled \
+ -Duse-frontend-pugl=enabled \
+ -Duse-frontend-glfw=enabled \
+ -Duse-fontconfig=disabled \
+ -Duse-evdev=enabled
+ ci-meson analyzer build
+ ci-meson analyzer test
+
+ - deploy: |
+ . ~/ci/activate
+
+ if ! ci-isrelease; then
+ complete-build
+ fi
+
+ ci-subtreemerge
triggers:
- action: email
- condition: failure
+ condition: failure
to: "<dev@open-music-kontrollers.ch>"
...
M d2tk/base.h => d2tk/base.h +1 -1
@@ 401,7 401,7 @@ d2tk_base_button_image(d2tk_base_t *base, d2tk_id_t id, ssize_t path_len,
d2tk_state_is_changed(d2tk_base_button_image(__VA_ARGS__))
D2TK_API const d2tk_style_t *
-d2tk_base_get_default_style();
+d2tk_base_get_default_style(void);
D2TK_API const d2tk_style_t *
d2tk_base_get_style(d2tk_base_t *base);
M d2tk/config.h.in => d2tk/config.h.in +1 -0
@@ 5,6 5,7 @@
#define D2TK_EVDEV @D2TK_EVDEV@
#define D2TK_INPUT_1_15 @D2TK_INPUT_1_15@
+#define D2TK_INPUT_1_19 @D2TK_INPUT_1_19@
#define D2TK_FONTCONFIG @D2TK_FONTCONFIG@
#define D2TK_DEBUG @D2TK_DEBUG@
#define D2TK_GLES_VERSION @D2TK_GLES_VERSION@
M d2tk/frontend.h => d2tk/frontend.h +1 -1
@@ 53,7 53,7 @@ d2tk_frontend_get_clipboard(d2tk_frontend_t *dpugl, const char **type,
size_t *buf_len);
D2TK_API float
-d2tk_frontend_get_scale();
+d2tk_frontend_get_scale(void);
#ifdef __cplusplus
}
M example/d2tk_fbdev.c => example/d2tk_fbdev.c +1 -0
@@ 10,6 10,7 @@
#include <dirent.h>
#include <string.h>
#include <signal.h>
+#include <limits.h>
#include <d2tk/frontend_fbdev.h>
#include "example/example.h"
M example/example.c => example/example.c +2 -2
@@ 1100,7 1100,7 @@ _render_c_pty(d2tk_base_t *base, const d2tk_rect_t *rect)
case 0:
{
D2TK_BASE_PTY(base, D2TK_ID, NULL, argv, HEIGHT, hrect,
- D2TK_FLAG_PTY_NOMOUSE, pty)
+ D2TK_FLAG_NONE, pty)
{
const uint32_t max_red = d2tk_pty_get_max_red(pty);
const uint32_t max_green = d2tk_pty_get_max_green(pty);
@@ 1126,7 1126,7 @@ _render_c_pty(d2tk_base_t *base, const d2tk_rect_t *rect)
case 1:
{
D2TK_BASE_PTY(base, D2TK_ID, NULL, argv, HEIGHT, hrect,
- D2TK_FLAG_PTY_NOMOUSE, pty)
+ D2TK_FLAG_NONE, pty)
{
// nothing to do
}
M example/example.h => example/example.h +1 -1
@@ 17,7 17,7 @@ D2TK_API int
d2tk_example_init(void);
D2TK_API void
-d2tk_example_deinit();
+d2tk_example_deinit(void);
D2TK_API void
d2tk_example_run(d2tk_frontend_t *frontend, d2tk_base_t *base,
M linenoise/encodings/utf8.c => linenoise/encodings/utf8.c +3 -3
@@ 469,7 469,7 @@ static size_t utf8BytesToCodePoint(const char* buf, size_t len, int* cp) {
*/
size_t linenoiseUtf8NextCharLen(const char* buf, size_t buf_len, size_t pos, size_t *col_len) {
size_t beg = pos;
- int cp;
+ int cp=0;
size_t len = utf8BytesToCodePoint(buf + pos, buf_len - pos, &cp);
if (isCombiningChar(cp)) {
/* NOTREACHED */
@@ 478,7 478,7 @@ size_t linenoiseUtf8NextCharLen(const char* buf, size_t buf_len, size_t pos, siz
if (col_len != NULL) *col_len = isWideChar(cp) ? 2 : 1;
pos += len;
while (pos < buf_len) {
- int cp;
+ int cp=0;
len = utf8BytesToCodePoint(buf + pos, buf_len - pos, &cp);
if (!isCombiningChar(cp)) return pos - beg;
pos += len;
@@ 494,7 494,7 @@ size_t linenoiseUtf8PrevCharLen(const char* buf, size_t buf_len, size_t pos, siz
while (pos > 0) {
size_t len = prevUtf8CharLen(buf, pos);
pos -= len;
- int cp;
+ int cp=0;
utf8BytesToCodePoint(buf + pos, len, &cp);
if (!isCombiningChar(cp)) {
if (col_len != NULL) *col_len = isWideChar(cp) ? 2 : 1;
M meson.build => meson.build +28 -14
@@ 176,10 176,16 @@ else
conf_data.set('D2TK_EVDEV', 0)
endif
-if input_dep.found() and input_dep.version().version_compare('>=1.15.0')
- conf_data.set('D2TK_INPUT_1_15', 1)
-else
- conf_data.set('D2TK_INPUT_1_15', 0)
+conf_data.set('D2TK_INPUT_1_15', 0)
+conf_data.set('D2TK_INPUT_1_19', 0)
+if input_dep.found()
+ if input_dep.version().version_compare('>=1.19.0')
+ conf_data.set('D2TK_INPUT_1_19', 1)
+ endif
+
+ if input_dep.version().version_compare('>=1.15.0')
+ conf_data.set('D2TK_INPUT_1_15', 1)
+ endif
endif
if use_fontconfig.enabled()
@@ 248,8 254,14 @@ test_base_srcs = [
join_paths('test', 'mock.c')
]
-c_args = ['-fvisibility=hidden',
- '-ffast-math']
+c_args = [
+ '-fvisibility=hidden',
+ '-ffast-math',
+ '-Wno-gnu-zero-variadic-macro-arguments',
+ '-Wno-unknown-attributes',
+ '-Wno-ignored-attributes',
+ '-Wno-unknown-warning-option'
+]
if host_machine.system() == 'windows'
deps += cc.find_library('opengl32', required : use_frontend_pugl)
@@ 416,8 428,10 @@ if build_tests
include_directories : inc_dir,
install : false)
- test('Test core', test_core)
- test('Test base', test_base)
+ test('Test core', test_core,
+ suite : ['memcheck'])
+ test('Test base', test_base,
+ suite : ['memcheck'])
if fc_list.found() and grep.found() and check_for_font.found()
test('FiraSans-Bold.ttf', check_for_font, args : ['FiraSans-Bold.ttf'])
@@ 426,13 440,13 @@ if build_tests
test('FiraCode-Medium.ttf', check_for_font, args : ['FiraCode-Medium.ttf'])
test('FiraCode-Bold.ttf', check_for_font, args : ['FiraCode-Bold.ttf'])
endif
-endif
-if reuse.found()
- test('REUSE', reuse, args : [
- '--root', meson.current_source_dir(),
- 'lint'
- ])
+ if reuse.found()
+ test('REUSE', reuse, args : [
+ '--root', meson.current_source_dir(),
+ 'lint'
+ ])
+ endif
endif
if build_doc
M meson_options.txt => meson_options.txt +4 -3
@@ 28,8 28,8 @@ option('use-backend-nanovg',
yield : true)
option('use-gles-version',
type : 'integer',
- min : 2,
- max : 3,
+ min : 2,
+ max : 3,
value : 3,
yield : true)
@@ 54,4 54,5 @@ option('use-fontconfig',
type : 'feature',
value : 'disabled',
yield : true)
-option('version', type : 'string', value : '0.1.1309')
+
+option('version', type : 'string', value : '0.2.0')
M src/backend_nanovg.c => src/backend_nanovg.c +3 -5
@@ 371,20 371,18 @@ _d2tk_nanovg_surf_draw(NVGcontext *ctx, int img, d2tk_coord_t xo,
d2tk_coord_t w = W;
d2tk_coord_t h = H;
- float scale = 1.f;
if(h != rect->h)
{
- scale = (float)rect->h / h;
+ const float scale = (float)rect->h / h;
w *= scale;
h = rect->h;
}
if(w > rect->w)
{
- const float scale_t = (float)rect->w / w;
- scale *= scale_t;
- h *= scale_t;
+ const float scale = (float)rect->w / w;
+ h *= scale;
w = rect->w;
}
M src/base.c => src/base.c +1 -1
@@ 688,7 688,7 @@ d2tk_base_is_active_hot(d2tk_base_t *base, d2tk_id_t id,
#define FONT_SANS_BOLD "FiraSans:bold"
D2TK_API const d2tk_style_t *
-d2tk_base_get_default_style()
+d2tk_base_get_default_style(void)
{
static const d2tk_style_t style = {
.font_face = FONT_SANS_BOLD,
M src/base_pty.c => src/base_pty.c +9 -8
@@ 79,7 79,6 @@ struct _d2tk_atom_body_pty_t {
d2tk_coord_t ncols;
d2tk_coord_t nrows;
unsigned bell;
- bool hasmouse;
int fd;
ptrdiff_t kid;
@@ 96,6 95,7 @@ struct _d2tk_atom_body_pty_t {
bool cursor_visible;
int cursor_shape;
+ int mouse;
col_t max_red;
col_t max_green;
@@ 171,7 171,7 @@ _term_done_thread(d2tk_atom_body_pty_t *vpty)
return 0;
}
- pthread_join(vpty->kid, NULL);
+ pthread_join((pthread_t)vpty->kid, NULL);
#if D2TK_DEBUG == 1
fprintf(stderr, "[%s] child with pid %ld has exited\n",
@@ 266,7 266,7 @@ _screen_settermprop(VTermProp prop, VTermValue *val, void *data)
} break;
case VTERM_PROP_MOUSE:
{
- vpty->hasmouse = true;
+ vpty->mouse = val->number;
} break;
default:
@@ 275,7 275,7 @@ _screen_settermprop(VTermProp prop, VTermValue *val, void *data)
} break;
}
- return 0;
+ return 1;
}
static int
@@ 323,7 323,7 @@ static const VTermScreenCallbacks screen_callbacks = {
.resize = _screen_resize
};
-static int
+static inline __attribute__((always_inline)) int
_clone(void *data)
{
clone_data_t *clone_data = data;
@@ 420,7 420,7 @@ _threadpty(int *amaster, const struct termios *termp, const struct winsize *winp
*amaster = thread_data_master;
- return thread;
+ return (ptrdiff_t)thread;
}
static ptrdiff_t
@@ 575,7 575,7 @@ _term_deinit_thread(d2tk_atom_body_pty_t *vpty)
// send CTRL-C
vterm_keyboard_unichar(vpty->vterm, 0x3, VTERM_MOD_NONE);
- pthread_join(vpty->kid, NULL);
+ pthread_join((pthread_t)vpty->kid, NULL);
#if D2TK_DEBUG == 1
fprintf(stderr, "[%s] child with pid %ld has exited\n",
@@ 1018,7 1018,8 @@ _term_behave(d2tk_base_t *base, d2tk_atom_body_pty_t *vpty,
vterm_state_focus_out(vpty->state);
}
- if( !vpty->hasmouse || (flags & D2TK_FLAG_PTY_NOMOUSE) )
+ if( (vpty->mouse == VTERM_PROP_MOUSE_NONE)
+ || (flags & D2TK_FLAG_PTY_NOMOUSE) )
{
return state;
}
M src/base_wave.c => src/base_wave.c +1 -1
@@ 65,7 65,7 @@ _d2tk_base_draw_wave(d2tk_core_t *core, const d2tk_rect_t *rect,
d2tk_core_color(core, style->fill_color[triple_active]);
- if(nelem > bnd_inner.w)
+ if( (nelem > bnd_inner.w) && (bnd_inner.w > 1) )
{
for(int32_t i = 0; i < bnd_inner.w; i++)
{
M src/frontend_fbdev.c => src/frontend_fbdev.c +49 -7
@@ 171,12 171,6 @@ handle_allocate_error:
}
static inline void
-_d2tk_frontend_close(d2tk_frontend_t *fbdev)
-{
- fbdev->done = true;
-}
-
-static inline void
_d2tk_frontend_expose(d2tk_frontend_t *fbdev)
{
d2tk_base_t *base = fbdev->base;
@@ 454,8 448,56 @@ d2tk_frontend_step(d2tk_frontend_t *fbdev)
} break;
}
} break;
+
+#if D2TK_INPUT_1_19
+ case LIBINPUT_EVENT_GESTURE_HOLD_BEGIN:
+ {
+ //FIXME
+ } break;
+ case LIBINPUT_EVENT_GESTURE_HOLD_END:
+ {
+ //FIXME
+ } break;
+ case LIBINPUT_EVENT_POINTER_SCROLL_WHEEL:
+ // fall-through
+ case LIBINPUT_EVENT_POINTER_SCROLL_FINGER:
+ // fall-through
+ case LIBINPUT_EVENT_POINTER_SCROLL_CONTINUOUS:
+ {
+ struct libinput_event_pointer *evp =
+ libinput_event_get_pointer_event(ev);
+
+ int32_t dx = 0;
+ int32_t dy = 0;
+
+ if(libinput_event_get_type(ev) == LIBINPUT_EVENT_POINTER_SCROLL_WHEEL)
+ {
+ dx = libinput_event_pointer_get_scroll_value_v120(evp,
+ LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL);
+ dy = libinput_event_pointer_get_scroll_value_v120(evp,
+ LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL);
+ }
+ else
+ {
+ dx = libinput_event_pointer_get_scroll_value(evp,
+ LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL);
+ dy = libinput_event_pointer_get_scroll_value(evp,
+ LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL);
+
+ dx /= 100.f; //FIXME
+ dy /= 100.f; //FIXME
+ }
+
+ d2tk_base_add_mouse_scroll(fbdev->base, -dx, -dy);
+ } break;
case LIBINPUT_EVENT_POINTER_AXIS:
{
+ // nothing to do
+ } break;
+#else
+ case LIBINPUT_EVENT_POINTER_AXIS:
+#endif
+ {
struct libinput_event_pointer *evp =
libinput_event_get_pointer_event(ev);
@@ 764,7 806,7 @@ d2tk_frontend_get_base(d2tk_frontend_t *fbdev)
}
D2TK_API float
-d2tk_frontend_get_scale()
+d2tk_frontend_get_scale(void)
{
return 1.f;
}
M src/frontend_glfw.c => src/frontend_glfw.c +1 -1
@@ 136,7 136,7 @@ d2tk_frontend_free(d2tk_frontend_t *dglfw)
}
D2TK_API float
-d2tk_frontend_get_scale()
+d2tk_frontend_get_scale(void)
{
#if 0
float xscale;
M src/frontend_pugl.c => src/frontend_pugl.c +1 -1
@@ 534,7 534,7 @@ d2tk_frontend_free(d2tk_frontend_t *dpugl)
}
D2TK_API float
-d2tk_frontend_get_scale()
+d2tk_frontend_get_scale(void)
{
const char *D2TK_SCALE = getenv("D2TK_SCALE");
const float scale = D2TK_SCALE ? atof(D2TK_SCALE) : 1.f;
M src/util_spawn.c => src/util_spawn.c +1 -1
@@ 22,7 22,7 @@ struct _clone_data_t {
char **argv;
};
-static int
+static inline __attribute__((always_inline)) int
_clone(void *data)
{
clone_data_t *clone_data = data;
M test/base.c => test/base.c +63 -63
@@ 50,7 50,7 @@ _expose_hot(d2tk_base_t *base, const d2tk_rect_t *rect, unsigned n, unsigned p)
}
static void
-_test_hot()
+_test_hot(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 165,7 165,7 @@ _expose_mouse_fwd_focus(d2tk_base_t *base, const d2tk_rect_t *rect, unsigned n,
}
static void
-_test_mouse_fwd_focus()
+_test_mouse_fwd_focus(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 293,7 293,7 @@ _expose_mouse_bwd_focus(d2tk_base_t *base, const d2tk_rect_t *rect, unsigned n,
}
static void
-_test_mouse_bwd_focus()
+_test_mouse_bwd_focus(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 410,7 410,7 @@ _expose_key_fwd_focus(d2tk_base_t *base, const d2tk_rect_t *rect, unsigned n,
}
static void
-_test_key_fwd_focus()
+_test_key_fwd_focus(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 516,7 516,7 @@ _expose_key_bwd_focus(d2tk_base_t *base, const d2tk_rect_t *rect, unsigned n,
}
static void
-_test_key_bwd_focus()
+_test_key_bwd_focus(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 568,7 568,7 @@ _test_key_bwd_focus()
#undef N
static void
-_test_get_set()
+_test_get_set(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 811,7 811,7 @@ _test_get_set()
}
static void
-_test_state_dump()
+_test_state_dump(void)
{
assert(strcmp(d2tk_state_dump(D2TK_STATE_NONE),
"................") == 0);
@@ 848,7 848,7 @@ _test_state_dump()
}
static void
-_test_table_rel()
+_test_table_rel(void)
{
#define N 12
#define M 8
@@ 881,7 881,7 @@ _test_table_rel()
}
static void
-_test_table_rel_empty()
+_test_table_rel_empty(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 914,7 914,7 @@ _test_table_rel_empty()
}
static void
-_test_table_abs()
+_test_table_abs(void)
{
#define N 12
#define M 8
@@ 947,7 947,7 @@ _test_table_abs()
}
static void
-_test_table_abs_empty()
+_test_table_abs_empty(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 982,7 982,7 @@ _test_table_abs_empty()
}
static void
-_test_frame_with_label()
+_test_frame_with_label(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1007,7 1007,7 @@ _test_frame_with_label()
}
static void
-_test_frame_wo_label()
+_test_frame_wo_label(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1032,7 1032,7 @@ _test_frame_wo_label()
}
static void
-_test_layout_relative_x()
+_test_layout_relative_x(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1062,7 1062,7 @@ _test_layout_relative_x()
}
static void
-_test_layout_relative_zero_x()
+_test_layout_relative_zero_x(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1092,7 1092,7 @@ _test_layout_relative_zero_x()
}
static void
-_test_layout_relative_all_x()
+_test_layout_relative_all_x(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1122,7 1122,7 @@ _test_layout_relative_all_x()
}
static void
-_test_layout_relative_y()
+_test_layout_relative_y(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1152,7 1152,7 @@ _test_layout_relative_y()
}
static void
-_test_layout_relative_zero_y()
+_test_layout_relative_zero_y(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1182,7 1182,7 @@ _test_layout_relative_zero_y()
}
static void
-_test_layout_relative_all_y()
+_test_layout_relative_all_y(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1212,7 1212,7 @@ _test_layout_relative_all_y()
}
static void
-_test_layout_absolute_x()
+_test_layout_absolute_x(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1242,7 1242,7 @@ _test_layout_absolute_x()
}
static void
-_test_layout_absolute_y()
+_test_layout_absolute_y(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
@@ 1272,7 1272,7 @@ _test_layout_absolute_y()
}
static void
-_test_clip()
+_test_clip(void)
{
{
const int32_t imin = 2;
@@ 1376,7 1376,7 @@ _test_clip()
}
static void
-_test_state()
+_test_state(void)
{
assert(d2tk_state_is_down(D2TK_STATE_DOWN));
assert(!d2tk_state_is_down(D2TK_STATE_NONE));
@@ 1431,7 1431,7 @@ _test_state()
}
static void
-_test_hit()
+_test_hit(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1470,7 1470,7 @@ _test_hit()
}
static void
-_test_default_style()
+_test_default_style(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1503,7 1503,7 @@ _test_default_style()
}
static void
-_test_scrollbar_x()
+_test_scrollbar_x(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1535,7 1535,7 @@ _test_scrollbar_x()
}
static void
-_test_scrollbar_y()
+_test_scrollbar_y(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1567,7 1567,7 @@ _test_scrollbar_y()
}
static void
-_test_pane_x()
+_test_pane_x(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1608,7 1608,7 @@ _test_pane_x()
}
static void
-_test_pane_y()
+_test_pane_y(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1649,7 1649,7 @@ _test_pane_y()
}
static void
-_test_cursor()
+_test_cursor(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1665,7 1665,7 @@ _test_cursor()
}
static void
-_test_button_label_image()
+_test_button_label_image(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1684,7 1684,7 @@ _test_button_label_image()
}
static void
-_test_button_label()
+_test_button_label(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1703,7 1703,7 @@ _test_button_label()
}
static void
-_test_button_image()
+_test_button_image(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1722,7 1722,7 @@ _test_button_image()
}
static void
-_test_button()
+_test_button(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1740,7 1740,7 @@ _test_button()
}
static void
-_test_toggle_label()
+_test_toggle_label(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1761,7 1761,7 @@ _test_toggle_label()
}
static void
-_test_toggle()
+_test_toggle(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1783,7 1783,7 @@ _test_toggle()
}
static void
-_test_image()
+_test_image(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1799,7 1799,7 @@ _test_image()
}
static void
-_test_bitmap()
+_test_bitmap(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1836,7 1836,7 @@ _custom(void *ctx, const d2tk_rect_t *rect, const void *data)
}
static void
-_test_custom()
+_test_custom(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1854,7 1854,7 @@ _test_custom()
}
static void
-_test_meter()
+_test_meter(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1873,7 1873,7 @@ _test_meter()
}
static void
-_test_meter_down()
+_test_meter_down(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 1894,7 1894,7 @@ _test_meter_down()
}
static void
-_test_combo()
+_test_combo(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 1920,7 1920,7 @@ _test_combo()
}
static void
-_test_combo_scroll_up()
+_test_combo_scroll_up(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 1948,7 1948,7 @@ _test_combo_scroll_up()
}
static void
-_test_combo_scroll_right()
+_test_combo_scroll_right(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 1976,7 1976,7 @@ _test_combo_scroll_right()
}
static void
-_test_combo_scroll_down()
+_test_combo_scroll_down(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 2004,7 2004,7 @@ _test_combo_scroll_down()
}
static void
-_test_combo_scroll_left()
+_test_combo_scroll_left(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 2032,7 2032,7 @@ _test_combo_scroll_left()
}
static void
-_test_combo_mouse_down_dec()
+_test_combo_mouse_down_dec(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 2062,7 2062,7 @@ _test_combo_mouse_down_dec()
}
static void
-_test_combo_mouse_down_inc()
+_test_combo_mouse_down_inc(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 2092,7 2092,7 @@ _test_combo_mouse_down_inc()
}
static void
-_test_combo_mouse_down_equ()
+_test_combo_mouse_down_equ(void)
{
#define nitms 4
d2tk_mock_ctx_t ctx = {
@@ 2121,7 2121,7 @@ _test_combo_mouse_down_equ()
}
static void
-_test_text_field()
+_test_text_field(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2148,7 2148,7 @@ _test_text_field()
}
static void
-_test_label()
+_test_label(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2167,7 2167,7 @@ _test_label()
}
static void
-_test_label_null()
+_test_label_null(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2186,7 2186,7 @@ _test_label_null()
}
static void
-_test_label_filled()
+_test_label_filled(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2209,7 2209,7 @@ _test_label_filled()
}
static void
-_test_link()
+_test_link(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2239,7 2239,7 @@ _test_link()
}
static void
-_test_link_down()
+_test_link_down(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2262,7 2262,7 @@ _test_link_down()
}
static void
-_test_dial_bool()
+_test_dial_bool(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2284,7 2284,7 @@ _test_dial_bool()
}
static void
-_test_dial_int32()
+_test_dial_int32(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2306,7 2306,7 @@ _test_dial_int32()
}
static void
-_test_dial_int64()
+_test_dial_int64(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2328,7 2328,7 @@ _test_dial_int64()
}
static void
-_test_dial_float()
+_test_dial_float(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2350,7 2350,7 @@ _test_dial_float()
}
static void
-_test_dial_double()
+_test_dial_double(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2372,7 2372,7 @@ _test_dial_double()
}
static void
-_test_prop_int32()
+_test_prop_int32(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2394,7 2394,7 @@ _test_prop_int32()
}
static void
-_test_prop_float()
+_test_prop_float(void)
{
d2tk_mock_ctx_t ctx = {
.check = NULL
@@ 2416,7 2416,7 @@ _test_prop_float()
}
static void
-_test_flowmatrix()
+_test_flowmatrix(void)
{
#define N 4
d2tk_mock_ctx_t ctx = {
M test/core.c => test/core.c +31 -31
@@ 13,7 13,7 @@
#include "mock.h"
static void
-_test_hash()
+_test_hash(void)
{
const uint32_t bar = 12;
const char *foo = "barbarbarbar";
@@ 25,7 25,7 @@ _test_hash()
}
static void
-_test_hash_foreach()
+_test_hash_foreach(void)
{
const uint32_t bar = 12;
const char *foo = "foofoofoofoo";
@@ 46,7 46,7 @@ _test_hash_foreach()
}
static void
-_test_rect_shrink()
+_test_rect_shrink(void)
{
d2tk_rect_t dst;
@@ 83,7 83,7 @@ _test_rect_shrink()
}
static void
-_test_point()
+_test_point(void)
{
// initialization
const d2tk_point_t src = D2TK_POINT(11, 22);
@@ 92,7 92,7 @@ _test_point()
}
static void
-_test_dimensions()
+_test_dimensions(void)
{
d2tk_coord_t w;
d2tk_coord_t h;
@@ 120,7 120,7 @@ _test_dimensions()
#define BG_COLOR 0x222222ff
static void
-_test_bg_color()
+_test_bg_color(void)
{
d2tk_core_t *core = d2tk_core_new(&d2tk_mock_driver, NULL);
assert(core);
@@ 155,7 155,7 @@ _check_move_to(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_move_to()
+_test_move_to(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_move_to
@@ 209,7 209,7 @@ _check_line_to(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_line_to()
+_test_line_to(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_line_to
@@ 259,7 259,7 @@ _check_rect(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_rect()
+_test_rect(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_rect
@@ 313,7 313,7 @@ _check_rounded_rect(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_rounded_rect()
+_test_rounded_rect(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_rounded_rect
@@ 372,7 372,7 @@ _check_arc(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_arc()
+_test_arc(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_arc
@@ 430,7 430,7 @@ _check_curve_to(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_curve_to()
+_test_curve_to(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_curve_to
@@ 479,7 479,7 @@ _check_color(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_color()
+_test_color(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_color
@@ 532,7 532,7 @@ _check_linear_gradient(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_linear_gradient()
+_test_linear_gradient(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_linear_gradient
@@ 585,7 585,7 @@ _check_stroke(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_stroke()
+_test_stroke(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_stroke
@@ 623,7 623,7 @@ _check_fill(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_fill()
+_test_fill(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_fill
@@ 661,7 661,7 @@ _check_save(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_save()
+_test_save(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_save
@@ 699,7 699,7 @@ _check_restore(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_restore()
+_test_restore(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_restore
@@ 740,7 740,7 @@ _check_rotate(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_rotate()
+_test_rotate(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_rotate
@@ 780,7 780,7 @@ _check_begin_path(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_begin_path()
+_test_begin_path(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_begin_path
@@ 818,7 818,7 @@ _check_close_path(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_close_path()
+_test_close_path(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_close_path
@@ 865,7 865,7 @@ _check_scissor(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_scissor()
+_test_scissor(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_scissor
@@ 908,7 908,7 @@ _check_reset_scissor(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_reset_scissor()
+_test_reset_scissor(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_reset_scissor
@@ 949,7 949,7 @@ _check_font_size(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_font_size()
+_test_font_size(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_font_size
@@ 992,7 992,7 @@ _check_font_face(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_font_face()
+_test_font_face(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_font_face
@@ 1045,7 1045,7 @@ _check_text(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_text()
+_test_text(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_text
@@ 1104,7 1104,7 @@ _check_image(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_image()
+_test_image(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_image
@@ 1178,7 1178,7 @@ _check_bitmap(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_bitmap()
+_test_bitmap(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_bitmap
@@ 1269,7 1269,7 @@ _check_custom(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_custom()
+_test_custom(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_custom
@@ 1320,7 1320,7 @@ _check_stroke_width(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_stroke_width()
+_test_stroke_width(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_stroke_width
@@ 1359,7 1359,7 @@ _check_triple(const d2tk_com_t *com, const d2tk_clip_t *clip)
}
static void
-_test_triple()
+_test_triple(void)
{
d2tk_mock_ctx_t ctx = {
.check = _check_triple