Changeset bad8d41 in mainline for uspace/lib


Ignore:
Timestamp:
2017-12-21T20:24:54Z (8 years ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Parents:
f04b5b3
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2017-12-21 18:24:59)
git-committer:
Jiří Zárevúcky <zarevucky.jiri@…> (2017-12-21 20:24:54)
Message:

The "not-so-obvious" error handling tweaks.

Location:
uspace/lib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/c/include/io/klog.h

    rf04b5b3 rbad8d41  
    4949#define KLOG_PRINTF(lvl, fmt, ...) ({ \
    5050        char *_s; \
    51         int _c = asprintf(&_s, fmt, ##__VA_ARGS__); \
    52         if (_c >= 0) { \
    53                 _c = klog_write((lvl), _s, str_size(_s)); \
     51        int _rc = ENOMEM; \
     52        if (asprintf(&_s, fmt, ##__VA_ARGS__) >= 0) { \
     53                _rc = klog_write((lvl), _s, str_size(_s)); \
    5454                free(_s); \
    5555        }; \
    56         (_c >= 0); \
     56        (_rc != EOK); \
    5757})
    5858
  • uspace/lib/http/src/request.c

    rf04b5b3 rbad8d41  
    9696        ssize_t meth_size = http_encode_method(NULL, 0, req->method, req->path);
    9797        if (meth_size < 0)
    98                 return meth_size;
     98                return EINVAL;
    9999        size_t size = meth_size;
    100100       
     
    102102                ssize_t header_size = http_header_encode(header, NULL, 0);
    103103                if (header_size < 0)
    104                         return header_size;
     104                        return EINVAL;
    105105                size += header_size;
    106106        }
     
    116116        if (written < 0) {
    117117                free(buf);
    118                 return written;
     118                return EINVAL;
    119119        }
    120120        pos += written;
     
    125125                if (written < 0) {
    126126                        free(buf);
    127                         return written;
     127                        return EINVAL;
    128128                }
    129129                pos += written;
  • uspace/lib/usbdev/src/recognise.c

    rf04b5b3 rbad8d41  
    8888                char *str = NULL; \
    8989                int __rc = asprintf(&str, format, ##__VA_ARGS__); \
    90                 if (__rc > 0) { \
    91                         __rc = usb_add_match_id((match_ids), (score), str); \
    92                 } \
    93                 if (__rc != EOK) { \
    94                         free(str); \
    95                         return __rc; \
     90                if (__rc >= 0) { \
     91                        int __rc = usb_add_match_id((match_ids), (score), str); \
     92                        if (__rc != EOK) { \
     93                                free(str); \
     94                                return __rc; \
     95                        } \
     96                } else { \
     97                        return ENOMEM; \
    9698                } \
    9799        } while (0)
Note: See TracChangeset for help on using the changeset viewer.