Changeset 4b6e1b2


Ignore:
Timestamp:
01/18/10 18:10:23 (11 years ago)
Author:
Perry Lorier <perry@…>
Branches:
4.0.1-hotfixes, cachetimestamps, develop, dpdk-ndag, etsilive, getfragoff, help, libtrace4, master, ndag_format, pfring, rc-4.0.1, rc-4.0.2, rc-4.0.3, rc-4.0.4, ringdecrementfix, ringperformance, ringtimestampfixes
Children:
7f2612c
Parents:
5778738
Message:

Make sure we always set errno

Location:
lib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • lib/ior-bzip.c

    rc66068d r4b6e1b2  
    5959        if (DATA(io)->err == ERR_EOF)
    6060                return 0; /* EOF */
    61         if (DATA(io)->err == ERR_ERROR)
     61        if (DATA(io)->err == ERR_ERROR) {
     62                errno=EIO;
    6263                return -1; /* ERROR! */
     64        }
    6365
    6466        DATA(io)->strm.avail_out = len;
     
    7375                                return len-DATA(io)->strm.avail_out;
    7476                        if (bytes_read < 0) { /* Error */
     77                                /* Errno should already be set */
    7578                                DATA(io)->err = ERR_ERROR;
    7679                                /* Return how much data we managed to read ok */
     
    9497                                break;
    9598                        default:
     99                                errno=EIO;
    96100                                DATA(io)->err = ERR_ERROR;
    97101                }
  • lib/ior-thread.c

    r15e9390 r4b6e1b2  
    126126                if (INBUFFER(state).len <1) {
    127127
    128                         if (copied<1)
     128                        if (copied<1) {
     129                                errno=EIO; /* FIXME: Preserve the errno from the other thread */
    129130                                copied = INBUFFER(state).len;
     131                        }
    130132
    131133                        pthread_mutex_unlock(&DATA(state)->mutex);
  • lib/ior-zlib.c

    r15e9390 r4b6e1b2  
    5757        if (DATA(io)->err == ERR_EOF)
    5858                return 0; /* EOF */
    59         if (DATA(io)->err == ERR_ERROR)
     59        if (DATA(io)->err == ERR_ERROR) {
     60                errno=EIO;
    6061                return -1; /* ERROR! */
     62        }
    6163
    6264        DATA(io)->strm.avail_out = len;
     
    7173                                return len-DATA(io)->strm.avail_out;
    7274                        if (bytes_read < 0) { /* Error */
     75                                /* errno should be set */
    7376                                DATA(io)->err = ERR_ERROR;
    7477                                /* Return how much data we managed to read ok */
     
    9295                                break;
    9396                        default:
     97                                errno=EIO;
    9498                                DATA(io)->err = ERR_ERROR;
    9599                }
Note: See TracChangeset for help on using the changeset viewer.