Changeset 1569a9b in mainline for uspace/lib/usbdev/src/recognise.c


Ignore:
Timestamp:
2017-12-24T16:40:33Z (6 years ago)
Author:
GitHub <noreply@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
48fd597
Parents:
a1026da
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2017-12-24 16:40:33)
git-committer:
GitHub <noreply@…> (2017-12-24 16:40:33)
Message:

The "not-so-obvious" error handling tweaks. (#9)

Some more changes to enable type-checking with errno_t. Some of the "fixes" here don't quite feel right, but a proper solution would be a more elaborate refactoring of the surrounding code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usbdev/src/recognise.c

    ra1026da r1569a9b  
    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.