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

Comparing IO-AIO/AIO.xs (file contents):
Revision 1.196 by root, Tue Sep 27 00:41:51 2011 UTC vs.
Revision 1.197 by root, Tue Sep 27 01:43:03 2011 UTC

617 break; 617 break;
618 618
619 case EIO_STAT: 619 case EIO_STAT:
620 case EIO_LSTAT: 620 case EIO_LSTAT:
621 case EIO_FSTAT: 621 case EIO_FSTAT:
622 PL_laststype = req->type == EIO_LSTAT ? OP_LSTAT : OP_STAT; 622 PL_laststype = req->type == EIO_LSTAT ? OP_LSTAT : OP_STAT;
623
623 PL_laststatval = req->result; 624 if (!(PL_laststatval = req->result))
624 /* if compilation fails here then perl's Stat_t is not struct _stati64 */ 625 /* if compilation fails here then perl's Stat_t is not struct _stati64 */
625 PL_statcache = *(EIO_STRUCT_STAT *)(req->ptr2); 626 PL_statcache = *(EIO_STRUCT_STAT *)(req->ptr2);
627
626 PUSHs (sv_result); 628 PUSHs (sv_result);
627 break; 629 break;
628 630
629 case EIO_READ: 631 case EIO_READ:
630 { 632 {
1359 PPCODE: 1361 PPCODE:
1360{ 1362{
1361 dREQ; 1363 dREQ;
1362 1364
1363 req->type = EIO_READDIR; 1365 req->type = EIO_READDIR;
1364 req->sv1 = newSVsv (pathname);
1365 req->ptr1 = SvPVbyte_nolen (req->sv1);
1366 req->int1 = flags | EIO_READDIR_DENTS | EIO_READDIR_CUSTOM1; 1366 req->int1 = flags | EIO_READDIR_DENTS | EIO_READDIR_CUSTOM1;
1367 1367
1368 if (flags & EIO_READDIR_DENTS) 1368 if (flags & EIO_READDIR_DENTS)
1369 req->int1 |= EIO_READDIR_CUSTOM2; 1369 req->int1 |= EIO_READDIR_CUSTOM2;
1370
1371 req_set_path1 (req, pathname);
1370 1372
1371 REQ_SEND; 1373 REQ_SEND;
1372} 1374}
1373 1375
1374void 1376void

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines