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

Comparing Coro/Coro/State.xs (file contents):
Revision 1.438 by root, Mon Nov 18 10:27:53 2013 UTC vs.
Revision 1.439 by root, Tue Nov 19 05:16:01 2013 UTC

1916 /* nothing to schedule: call the idle handler */ 1916 /* nothing to schedule: call the idle handler */
1917 if (SvROK (sv_idle) 1917 if (SvROK (sv_idle)
1918 && SvOBJECT (SvRV (sv_idle))) 1918 && SvOBJECT (SvRV (sv_idle)))
1919 { 1919 {
1920 if (SvRV (sv_idle) == SvRV (coro_current)) 1920 if (SvRV (sv_idle) == SvRV (coro_current))
1921 {
1922 require_pv ("Carp");
1923
1924 {
1925 dSP;
1926
1927 ENTER;
1928 SAVETMPS;
1929
1930 PUSHMARK (SP);
1921 croak ("FATAL: $Coro::IDLE blocked itself - did you try to block inside an event loop callback? Caught"); 1931 XPUSHs (sv_2mortal (newSVpv ("FATAL: $Coro::IDLE blocked itself - did you try to block inside an event loop callback? Caught", 0)));
1932 PUTBACK;
1933 call_pv ("Carp::confess", G_VOID | G_DISCARD);
1934
1935 FREETMPS;
1936 LEAVE;
1937 }
1938 }
1922 1939
1923 ++coro_nready; /* hack so that api_ready doesn't invoke ready hook */ 1940 ++coro_nready; /* hack so that api_ready doesn't invoke ready hook */
1924 api_ready (aTHX_ SvRV (sv_idle)); 1941 api_ready (aTHX_ SvRV (sv_idle));
1925 --coro_nready; 1942 --coro_nready;
1926 } 1943 }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines