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

Comparing Coro/Coro.xs (file contents):
Revision 1.3 by root, Tue Jul 10 01:43:21 2001 UTC vs.
Revision 1.4 by root, Tue Jul 10 21:19:47 2001 UTC

130 RETVAL = coro; 130 RETVAL = coro;
131 OUTPUT: 131 OUTPUT:
132 RETVAL 132 RETVAL
133 133
134void 134void
135_transfer(old,new) 135_transfer(prev,next)
136 Coro old 136 Coro prev
137 Coro new 137 Coro next
138 CODE: 138 CODE:
139 139
140 PUTBACK; 140 PUTBACK;
141 SAVE (old); 141 SAVE (prev);
142 142
143 if (new->mainstack) /* this is, in theory, unnecessary overhead */ 143 if (next->mainstack) /* this is, in theory, unnecessary overhead */
144 { 144 {
145 LOAD (new); 145 LOAD (next);
146 SPAGAIN; 146 SPAGAIN;
147 } 147 }
148 else 148 else
149 { 149 {
150 init_stacks (); 150 init_stacks ();
153 DEFSV = newSVsv(&PL_sv_undef); 153 DEFSV = newSVsv(&PL_sv_undef);
154 154
155 SPAGAIN; 155 SPAGAIN;
156 PUSHMARK(SP); 156 PUSHMARK(SP);
157 PUTBACK; 157 PUTBACK;
158 call_sv (new->proc, G_VOID | G_DISCARD | G_EVAL); 158 call_sv (next->proc, G_VOID | G_DISCARD | G_EVAL);
159 159
160 exit (0); 160 exit (0);
161 161
162 /*SPAGAIN; 162 /*SPAGAIN;
163 SAVE (new); 163 SAVE (next);
164 164
165 LOAD (old); 165 LOAD (prev);
166 SPAGAIN;*/ 166 SPAGAIN;*/
167 } 167 }
168 168
169void 169void
170DESTROY(coro) 170DESTROY(coro)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines