fixed compile errors and a segfault on exit
This commit is contained in:
parent
7b1c8dd5bb
commit
82ca8371e6
|
@ -1,5 +1,6 @@
|
||||||
OBJS=main.o sysinput.o fbinit.o fbprimitive.o log.o gpio.o msg_queue.o time_func.o config.o splash.o
|
OBJS=main.o sysinput.o fbinit.o fbprimitive.o log.o gpio.o msg_queue.o time_func.o config.o splash.o
|
||||||
LIBS=-lbcm2835 -lpthread
|
LIBS=-lbcm2835 -lpthread
|
||||||
|
CFLAGS=-g
|
||||||
|
|
||||||
upiwin: $(OBJS)
|
upiwin: $(OBJS)
|
||||||
gcc -o upiwin $(OBJS) $(LIBS)
|
gcc -o upiwin $(OBJS) $(LIBS)
|
||||||
|
|
|
@ -46,7 +46,8 @@ static void run_exit_funcs(void)
|
||||||
{
|
{
|
||||||
p = exitfuncs;
|
p = exitfuncs;
|
||||||
exitfuncs = p->next;
|
exitfuncs = p->next;
|
||||||
for (i = p->num_funcs - 1; i >= 0; i++)
|
for (i = p->num_funcs - 1; i >= 0; i--)
|
||||||
|
if (p->funcs[i])
|
||||||
(*(p->funcs[i]))();
|
(*(p->funcs[i]))();
|
||||||
free(p);
|
free(p);
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,10 +73,10 @@ void Fb_line(INT32 x1, INT32 y1, INT32 x2, INT32 y2, UINT16 color, BOOL xor)
|
||||||
|
|
||||||
void Fb_rectangle(INT32 x1, INT32 y1, INT32 x2, INT32 y2, UINT16 color, BOOL xor)
|
void Fb_rectangle(INT32 x1, INT32 y1, INT32 x2, INT32 y2, UINT16 color, BOOL xor)
|
||||||
{
|
{
|
||||||
FB_line(x1, y1, x2, y1, color, xor);
|
Fb_line(x1, y1, x2, y1, color, xor);
|
||||||
FB_line(x2, y1 + 1, x2, y2 - 1, color, xor);
|
Fb_line(x2, y1 + 1, x2, y2 - 1, color, xor);
|
||||||
FB_line(x1, y2, x2, y2, color, xor);
|
Fb_line(x1, y2, x2, y2, color, xor);
|
||||||
FB_line(x1, y1 + 1, x1, y2 - 1, color, xor);
|
Fb_line(x1, y1 + 1, x1, y2 - 1, color, xor);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Fb_filled_rectangle(INT32 x1, INT32 y1, INT32 x2, INT32 y2, UINT16 color, BOOL xor)
|
void Fb_filled_rectangle(INT32 x1, INT32 y1, INT32 x2, INT32 y2, UINT16 color, BOOL xor)
|
||||||
|
|
|
@ -14,10 +14,10 @@ static void do_draw(void)
|
||||||
{
|
{
|
||||||
Fb_filled_rectangle(10, 10, 50, 50, FBPRIMCLR_RED, FALSE);
|
Fb_filled_rectangle(10, 10, 50, 50, FBPRIMCLR_RED, FALSE);
|
||||||
Fb_filled_rectangle(60, 10, 100, 50, FBPRIMCLR_GREEN, FALSE);
|
Fb_filled_rectangle(60, 10, 100, 50, FBPRIMCLR_GREEN, FALSE);
|
||||||
Fb_filled_rectangle(110, 10, 160, 50, FBPRIMCLR_BLUE, FALSE);
|
Fb_filled_rectangle(110, 10, 150, 50, FBPRIMCLR_BLUE, FALSE);
|
||||||
Fb_filled_rectangle(10, 60, 50, 100, FBPRIMCLR_CYAN, FALSE);
|
Fb_filled_rectangle(10, 60, 50, 100, FBPRIMCLR_CYAN, FALSE);
|
||||||
Fb_filled_rectangle(60, 60, 100, 100, FBPRIMCLR_MAGENTA, FALSE);
|
Fb_filled_rectangle(60, 60, 100, 100, FBPRIMCLR_MAGENTA, FALSE);
|
||||||
Fb_filled_rectangle(110, 60, 160, 100, FBPRIMCLR_YELLOW, FALSE);
|
Fb_filled_rectangle(110, 60, 150, 100, FBPRIMCLR_YELLOW, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
|
|
Loading…
Reference in New Issue
Block a user