summaryrefslogtreecommitdiff
path: root/src/til_threads.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/til_threads.c')
-rw-r--r--src/til_threads.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/til_threads.c b/src/til_threads.c
index e2c8a97..9e55a29 100644
--- a/src/til_threads.c
+++ b/src/til_threads.c
@@ -63,7 +63,11 @@ static void * thread_func(void *_thread)
* which may require a consistent mapping of CPU to fragnum across frames.
*/
for (;;) {
- til_fb_fragment_t frag, *frag_ptr = &frag;
+ til_fb_fragment_t texture, frag, *frag_ptr = &frag;
+
+ /* XXX: jank alert, need to cleanup texture integration TODO */
+ if ((*(threads->fragment_ptr))->texture)
+ frag.texture = &texture; /* provide space, but the fragmenter must populate it */
while (!__sync_bool_compare_and_swap(&threads->next_fragment, frag_num, frag_num + 1));
@@ -76,7 +80,11 @@ static void * thread_func(void *_thread)
} else { /* render *any* available fragment */
for (;;) {
unsigned frag_num;
- til_fb_fragment_t frag, *frag_ptr = &frag;
+ til_fb_fragment_t texture, frag, *frag_ptr = &frag;
+
+ /* XXX: jank alert, need to cleanup texture integration TODO */
+ if ((*(threads->fragment_ptr))->texture)
+ frag.texture = &texture; /* provide space, but the fragmenter must populate it */
frag_num = __sync_fetch_and_add(&threads->next_fragment, 1);
© All Rights Reserved