ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Coro/Event/Event.xs
(Generate patch)

Comparing Coro/Event/Event.xs (file contents):
Revision 1.26 by root, Sat Jun 20 08:58:00 2009 UTC vs.
Revision 1.27 by root, Tue Jul 27 14:50:17 2010 UTC

88 88
89void 89void
90_install_std_cb (SV *self, int type) 90_install_std_cb (SV *self, int type)
91 CODE: 91 CODE:
92{ 92{
93 pe_watcher *w = GEventAPI->sv_2watcher (self); 93 pe_watcher *w = (pe_watcher *)GEventAPI->sv_2watcher (self);
94 94
95 if (w->callback) 95 if (w->callback)
96 croak ("Coro::Event watchers must not have a callback (see Coro::Event), caught"); 96 croak ("Coro::Event watchers must not have a callback (see Coro::Event), caught");
97 97
98 { 98 {
104 AvARRAY (priv)[CD_OK ] = &PL_sv_no; 104 AvARRAY (priv)[CD_OK ] = &PL_sv_no;
105 AvARRAY (priv)[CD_HITS] = newSViv (0); 105 AvARRAY (priv)[CD_HITS] = newSViv (0);
106 AvARRAY (priv)[CD_GOT ] = newSViv (0); 106 AvARRAY (priv)[CD_GOT ] = newSViv (0);
107 SvREADONLY_on (priv); 107 SvREADONLY_on (priv);
108 108
109 w->callback = coro_std_cb; 109 w->callback = (void *)coro_std_cb;
110 w->ext_data = priv; 110 w->ext_data = priv;
111 111
112 { 112 {
113 SV *mob = newRV_noinc ((SV *)priv); 113 SV *mob = newRV_noinc ((SV *)priv);
114 sv_magicext (SvRV (self), mob, PERL_MAGIC_coro_event, 0, (char *)w, 0); 114 sv_magicext (SvRV (self), mob, PERL_MAGIC_coro_event, 0, (char *)w, 0);
119 119
120void 120void
121_next (SV *self) 121_next (SV *self)
122 CODE: 122 CODE:
123{ 123{
124 pe_watcher *w = GEventAPI->sv_2watcher (self); 124 pe_watcher *w = (pe_watcher *)GEventAPI->sv_2watcher (self);
125 AV *priv = (AV *)w->ext_data; 125 AV *priv = (AV *)w->ext_data;
126 126
127 if (AvARRAY (priv)[CD_OK] == &PL_sv_yes) 127 if (AvARRAY (priv)[CD_OK] == &PL_sv_yes)
128 { 128 {
129 AvARRAY (priv)[CD_OK] = &PL_sv_no; 129 AvARRAY (priv)[CD_OK] = &PL_sv_no;
144{ 144{
145 if (GIMME_V == G_VOID) 145 if (GIMME_V == G_VOID)
146 XSRETURN_EMPTY; 146 XSRETURN_EMPTY;
147 147
148 { 148 {
149 pe_watcher *w = GEventAPI->sv_2watcher (self); 149 pe_watcher *w = (pe_watcher *)GEventAPI->sv_2watcher (self);
150 AV *priv = (AV *)w->ext_data; 150 AV *priv = (AV *)w->ext_data;
151 151
152 RETVAL = newRV_inc ((SV *)priv); 152 RETVAL = newRV_inc ((SV *)priv);
153 153
154 /* may need to bless it now */ 154 /* may need to bless it now */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines