ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/EV-Loop-Async/Async.xs
(Generate patch)

Comparing cvsroot/EV-Loop-Async/Async.xs (file contents):
Revision 1.5 by root, Tue Jul 14 18:02:08 2009 UTC vs.
Revision 1.6 by root, Tue Jul 14 19:05:10 2009 UTC

60} 60}
61 61
62X_THREAD_PROC(l_run) 62X_THREAD_PROC(l_run)
63{ 63{
64 struct ev_loop *loop = (struct ev_loop *)thr_arg; 64 struct ev_loop *loop = (struct ev_loop *)thr_arg;
65 udat *u = ev_userdata (loop);
66 65
67 X_LOCK (u->lock); 66 l_acquire (EV_A);
67
68 /* yeah */ 68 /* yeah */
69 pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, 0); 69 pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, 0);
70 70
71 ev_ref (loop); 71 ev_ref (EV_A);
72 ev_loop (loop, 0); 72 ev_loop (EV_A, 0);
73 ev_unref (loop); 73 ev_unref (EV_A);
74 74
75 X_UNLOCK (u->lock); 75 l_release (EV_A);
76 76
77 return 0; 77 return 0;
78} 78}
79 79
80static void 80static void

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines