Changeset 8e3498b in mainline for uspace/app/taskdump/symtab.c


Ignore:
Timestamp:
2017-12-04T18:44:24Z (8 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
bde5c04
Parents:
40feeac
Message:

vfs_read/write() should return error code separately from number of bytes transferred.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/taskdump/symtab.c

    r40feeac r8e3498b  
    7171        int fd;
    7272        int rc;
     73        size_t nread;
    7374        int i;
    7475
     
    8889        }
    8990
    90         rc = vfs_read(fd, &pos, &elf_hdr, sizeof(elf_header_t));
    91         if (rc != sizeof(elf_header_t)) {
     91        rc = vfs_read(fd, &pos, &elf_hdr, sizeof(elf_header_t), &nread);
     92        if (rc != EOK || nread != sizeof(elf_header_t)) {
    9293                printf("failed reading elf header\n");
    9394                free(stab);
     
    304305{
    305306        int rc;
     307        size_t nread;
    306308        aoff64_t pos = elf_hdr->e_shoff + idx * sizeof(elf_section_header_t);
    307309
    308         rc = vfs_read(fd, &pos, sec_hdr, sizeof(elf_section_header_t));
    309         if (rc != sizeof(elf_section_header_t))
     310        rc = vfs_read(fd, &pos, sec_hdr, sizeof(elf_section_header_t), &nread);
     311        if (rc != EOK || nread != sizeof(elf_section_header_t))
    310312                return EIO;
    311313
     
    326328static int chunk_load(int fd, off64_t start, size_t size, void **ptr)
    327329{
    328         ssize_t rc;
     330        int rc;
     331        size_t nread;
    329332        aoff64_t pos = start;
    330333
     
    335338        }
    336339
    337         rc = vfs_read(fd, &pos, *ptr, size);
    338         if (rc != (ssize_t) size) {
     340        rc = vfs_read(fd, &pos, *ptr, size, &nread);
     341        if (rc != EOK || nread != size) {
    339342                printf("failed reading chunk\n");
    340343                free(*ptr);
Note: See TracChangeset for help on using the changeset viewer.