diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/dged/buffer_view.c | 6 | ||||
| -rw-r--r-- | src/dged/reactor-kqueue.c | 45 | ||||
| -rw-r--r-- | src/dged/settings.c | 2 |
3 files changed, 51 insertions, 2 deletions
diff --git a/src/dged/buffer_view.c b/src/dged/buffer_view.c index 23bd8e2..49d938a 100644 --- a/src/dged/buffer_view.c +++ b/src/dged/buffer_view.c @@ -353,7 +353,11 @@ static void render_modeline(struct modeline *modeline, struct buffer_view *view, if (strcmp(buf, (char *)modeline->buffer) != 0) { modeline->buffer = realloc(modeline->buffer, width * 4); modeline->sz = width * 4; - strcpy((char *)modeline->buffer, buf); + + uint32_t len = strlen(buf); + len = (len + 1) > modeline->sz ? modeline->sz - 1 : len; + memcpy(modeline->buffer, buf, len); + modeline->buffer[len] = '\0'; } command_list_set_index_color_bg(commands, 8); diff --git a/src/dged/reactor-kqueue.c b/src/dged/reactor-kqueue.c new file mode 100644 index 0000000..5543c04 --- /dev/null +++ b/src/dged/reactor-kqueue.c @@ -0,0 +1,45 @@ +#include "reactor.h" + +#include <stdlib.h> + +struct reactor { + +}; + +struct reactor *reactor_create() { + struct reactor *reactor = calloc(1, sizeof(struct reactor)); + + return reactor; +} + +void reactor_destroy(struct reactor *reactor) { + free(reactor); +} + +void reactor_update(struct reactor *reactor) { + +} + +bool reactor_poll_event(struct reactor *reactor, uint32_t ev_id) { + return false; +} + +uint32_t reactor_register_interest(struct reactor *reactor, int fd, enum interest interest) { + return -1; +} + +uint32_t reactor_watch_file(struct reactor *reactor, const char *path, uint32_t mask) { + return -1; +} + +void reactor_unwatch_file(struct reactor *reactor, uint32_t id) { + +} + +bool reactor_next_file_event(struct reactor *reactor, struct file_event *out) { + return false; +} + +void reactor_unregister_interest(struct reactor *reactor, uint32_t ev_id) { + +} diff --git a/src/dged/settings.c b/src/dged/settings.c index fc7d23c..e63862f 100644 --- a/src/dged/settings.c +++ b/src/dged/settings.c @@ -150,7 +150,7 @@ static int32_t parse_toml(struct parser *state, char **errmsgs[]) { curkey = calloc(len, 1); if (curtbl != NULL) { - strcpy(curkey, curtbl); + memcpy(curkey, curtbl, strlen(curtbl)); curkey[strlen(curtbl)] = '.'; } |
