return ret;
}
-pthread_t locking_task = -1;
+pthread_t locking_task = (pthread_t)-1L;
int locking_event = -1;
int locking_message = -1;
// return top_level->next_repeat_id++;
// }
+XEvent *BC_WindowBase::new_xevent()
+{
+ XEvent *event = new XEvent;
+ memset(event, 0, sizeof(*event));
+ return event;
+}
#ifndef SINGLE_THREAD
int BC_WindowBase::arm_repeat(int64_t duration)
{
- XEvent *event = new XEvent;
+ XEvent *event = new_xevent();
XClientMessageEvent *ptr = (XClientMessageEvent*)event;
ptr->type = ClientMessage;
ptr->message_type = RepeaterXAtom;
int BC_WindowBase::send_custom_xatom(xatom_event *event)
{
- XEvent *myevent = new XEvent;
+ XEvent *myevent = new_xevent();
XClientMessageEvent *ptr = (XClientMessageEvent*)myevent;
ptr->type = ClientMessage;
ptr->message_type = event->message_type;
#else // SINGLE_THREAD
init_wait();
if( !event_thread ) return;
- XEvent *event = new XEvent;
+ XEvent *event = new_xevent();
XClientMessageEvent *ptr = (XClientMessageEvent*)event;
event->type = ClientMessage;
ptr->message_type = SetDoneXAtom;