mirror of https://github.com/xzeldon/htop.git
goto considered harmful and confuses cppcheck.
This commit is contained in:
parent
2f0a4b3d3a
commit
4027e5ee44
|
@ -182,17 +182,17 @@ const char *ProcessList_treeStrUtf8[TREE_STR_COUNT] = {
|
||||||
static ssize_t xread(int fd, void *buf, size_t count) {
|
static ssize_t xread(int fd, void *buf, size_t count) {
|
||||||
// Read some bytes. Retry on EINTR and when we don't get as many bytes as we requested.
|
// Read some bytes. Retry on EINTR and when we don't get as many bytes as we requested.
|
||||||
size_t alreadyRead = 0;
|
size_t alreadyRead = 0;
|
||||||
start:;
|
for(;;) {
|
||||||
ssize_t res = read(fd, buf, count);
|
ssize_t res = read(fd, buf, count);
|
||||||
if (res == -1 && errno == EINTR) goto start;
|
if (res == -1 && errno == EINTR) continue;
|
||||||
if (res > 0) {
|
if (res > 0) {
|
||||||
buf = ((char*)buf)+res;
|
buf = ((char*)buf)+res;
|
||||||
count -= res;
|
count -= res;
|
||||||
alreadyRead += res;
|
alreadyRead += res;
|
||||||
|
}
|
||||||
|
if (res == -1) return -1;
|
||||||
|
if (count == 0 || res == 0) return alreadyRead;
|
||||||
}
|
}
|
||||||
if (res == -1) return -1;
|
|
||||||
if (count == 0 || res == 0) return alreadyRead;
|
|
||||||
goto start;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ProcessList* ProcessList_new(UsersTable* usersTable, Hashtable* pidWhiteList) {
|
ProcessList* ProcessList_new(UsersTable* usersTable, Hashtable* pidWhiteList) {
|
||||||
|
|
Loading…
Reference in New Issue