Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/generic/dirent.c

    r8d2dd7f2 rb7fd2a0  
    5454        }
    5555       
    56         int fd = vfs_lookup(dirname, WALK_DIRECTORY);
    57         if (fd < 0) {
     56        int fd;
     57        errno_t rc = vfs_lookup(dirname, WALK_DIRECTORY, &fd);
     58        if (rc != EOK) {
    5859                free(dirp);
    59                 errno = fd;
     60                errno = rc;
    6061                return NULL;
    6162        }
    6263       
    63         int rc = vfs_open(fd, MODE_READ);
    64         if (rc < 0) {
     64        rc = vfs_open(fd, MODE_READ);
     65        if (rc != EOK) {
    6566                free(dirp);
    6667                vfs_put(fd);
     
    8283struct dirent *readdir(DIR *dirp)
    8384{
    84         int rc;
     85        errno_t rc;
    8586        ssize_t len = 0;
    8687       
     
    113114int closedir(DIR *dirp)
    114115{
    115         int rc;
    116        
    117         rc = vfs_put(dirp->fd);
     116        errno_t rc = vfs_put(dirp->fd);
    118117        free(dirp);
    119118
    120         /* On error errno was set by close() */
    121         return rc;
     119        if (rc == EOK) {
     120                return 0;
     121        } else {
     122                errno = rc;
     123                return -1;
     124        }
    122125}
    123126
Note: See TracChangeset for help on using the changeset viewer.