aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2016-05-01 21:58:34 -0400
committerJesse Luehrs <doy@tozt.net>2016-05-01 21:58:34 -0400
commita2b9833253748ca113cc101c60867fd7e1dca64d (patch)
tree22ff693d49dbc04a48ee631d87a93c8102c377a3 /src
parent0f0f511ecaadcfd5758b454d96ddc57d6b2bc92b (diff)
downloadrunes-a2b9833253748ca113cc101c60867fd7e1dca64d.tar.gz
runes-a2b9833253748ca113cc101c60867fd7e1dca64d.zip
no reason to expose the loop_data struct anymore either
Diffstat (limited to 'src')
-rw-r--r--src/loop.c28
-rw-r--r--src/loop.h8
-rw-r--r--src/runes.h2
3 files changed, 18 insertions, 20 deletions
diff --git a/src/loop.c b/src/loop.c
index 1f5ef62..0a45439 100644
--- a/src/loop.c
+++ b/src/loop.c
@@ -2,6 +2,14 @@
#include "runes.h"
+struct runes_loop_data {
+ uv_work_t req;
+ RunesLoop *loop;
+ RunesTerm *t;
+ void (*work_cb)(RunesTerm*);
+ int (*after_work_cb)(RunesTerm*);
+};
+
struct runes_loop_timer_data {
RunesTerm *t;
void (*cb)(RunesTerm*);
@@ -26,16 +34,16 @@ void runes_loop_start_work(RunesLoop *loop, RunesTerm *t,
void (*work_cb)(RunesTerm*),
int (*after_work_cb)(RunesTerm*))
{
- void *data;
+ struct runes_loop_data *data;
- data = malloc(sizeof(RunesLoopData));
- ((RunesLoopData *)data)->req.data = data;
- ((RunesLoopData *)data)->loop = loop;
- ((RunesLoopData *)data)->t = t;
- ((RunesLoopData *)data)->work_cb = work_cb;
- ((RunesLoopData *)data)->after_work_cb = after_work_cb;
+ data = malloc(sizeof(struct runes_loop_data));
+ data->req.data = data;
+ data->loop = loop;
+ data->t = t;
+ data->work_cb = work_cb;
+ data->after_work_cb = after_work_cb;
- uv_queue_work(loop->loop, data, runes_loop_do_work,
+ uv_queue_work(loop->loop, (void*)data, runes_loop_do_work,
runes_loop_do_after_work);
}
@@ -61,7 +69,7 @@ void runes_loop_cleanup(RunesLoop *loop)
static void runes_loop_do_work(uv_work_t *req)
{
- RunesLoopData *data = req->data;
+ struct runes_loop_data *data = req->data;
RunesTerm *t = data->t;
data->work_cb(t);
@@ -69,7 +77,7 @@ static void runes_loop_do_work(uv_work_t *req)
static void runes_loop_do_after_work(uv_work_t *req, int status)
{
- RunesLoopData *data = req->data;
+ struct runes_loop_data *data = req->data;
RunesLoop *loop = data->loop;
RunesTerm *t = data->t;
int should_loop = 0;
diff --git a/src/loop.h b/src/loop.h
index 8186bf3..3370da3 100644
--- a/src/loop.h
+++ b/src/loop.h
@@ -7,14 +7,6 @@ struct runes_loop {
uv_loop_t *loop;
};
-struct runes_loop_data {
- uv_work_t req;
- RunesLoop *loop;
- RunesTerm *t;
- void (*work_cb)(RunesTerm*);
- int (*after_work_cb)(RunesTerm*);
-};
-
void runes_loop_init(RunesLoop *loop);
void runes_loop_run(RunesLoop *loop);
void runes_loop_start_work(RunesLoop *loop, RunesTerm *t,
diff --git a/src/runes.h b/src/runes.h
index 62f4536..6bdfce1 100644
--- a/src/runes.h
+++ b/src/runes.h
@@ -9,7 +9,6 @@ struct runes_pty;
struct runes_config;
struct runes_display;
struct runes_loop;
-struct runes_loop_data;
typedef struct runes_term RunesTerm;
typedef struct runes_window RunesWindowBackend;
@@ -17,7 +16,6 @@ typedef struct runes_pty RunesPtyBackend;
typedef struct runes_config RunesConfig;
typedef struct runes_display RunesDisplay;
typedef struct runes_loop RunesLoop;
-typedef struct runes_loop_data RunesLoopData;
#include "util.h"