diff options
| author | Franklin Wei <frankhwei536@gmail.com> | 2016-02-12 21:54:42 -0500 |
|---|---|---|
| committer | Franklin Wei <git@fwei.tk> | 2016-02-16 20:42:49 -0500 |
| commit | e19e49b3c09d094402e916c1a458e9f5e4e51642 (patch) | |
| tree | c3f33326a5e4822f2251e8d7370294096ab2eba4 /src/util.c | |
| parent | c850993ef6fe0422cc60c6af7886045269da70e4 (diff) | |
| download | netcosm-e19e49b3c09d094402e916c1a458e9f5e4e51642.zip netcosm-e19e49b3c09d094402e916c1a458e9f5e4e51642.tar.gz netcosm-e19e49b3c09d094402e916c1a458e9f5e4e51642.tar.bz2 netcosm-e19e49b3c09d094402e916c1a458e9f5e4e51642.tar.xz | |
support multiple objects sharing the same name
Diffstat (limited to 'src/util.c')
| -rw-r--r-- | src/util.c | 33 |
1 files changed, 31 insertions, 2 deletions
@@ -96,10 +96,10 @@ char *read_string(int fd) error("read_string: EOF"); } char *ret = malloc(sz + 1); - if(read(fd, ret, sz) < 0) + if((size_t)read(fd, ret, sz) != sz) { free(ret); - return NULL; + error("read_string: EOF"); } ret[sz] = '\0'; return ret; @@ -133,6 +133,20 @@ void write_uint32(int fd, uint32_t b) error("write failed"); } +uint64_t read_uint64(int fd) +{ + uint64_t ret; + if(read(fd, &ret, sizeof(ret)) != sizeof(ret)) + error("unexpected EOF"); + return ret; +} + +void write_uint64(int fd, uint64_t b) +{ + if(write(fd, &b, sizeof(b)) != sizeof(b)) + error("write failed"); +} + size_t read_size(int fd) { size_t ret; @@ -146,3 +160,18 @@ void write_size(int fd, size_t b) if(write(fd, &b, sizeof(b)) != sizeof(b)) error("write failed"); } + +bool is_vowel(char c) +{ + switch(tolower(c)) + { + case 'a': + case 'e': + case 'i': + case 'o': + case 'u': + return true; + default: + return false; + } +} |