diff options
author | Michal Schmidt <mschmidt@redhat.com> | 2013-03-05 15:52:44 +0100 |
---|---|---|
committer | Michal Schmidt <mschmidt@redhat.com> | 2013-03-13 14:14:13 +0100 |
commit | 6282c859bdc6463cb25734dcfd3cf8628d951088 (patch) | |
tree | 20cff7f2503ecfa017b6c2b3607a74d889223443 | |
parent | 5052495bbaf318d132024e75295da2f5d721420c (diff) |
util, manager: and mempset() and use it
Just like mempcpy() is almost identical to memcpy() except the useful
return value, so is the relation of mempset() to memset().
-rw-r--r-- | src/core/manager.c | 12 | ||||
-rw-r--r-- | src/shared/util.h | 5 |
2 files changed, 9 insertions, 8 deletions
diff --git a/src/core/manager.c b/src/core/manager.c index a3eeb4afc1..8e66732cd7 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -226,10 +226,8 @@ static void draw_cylon(char buffer[], size_t buflen, unsigned width, unsigned po assert(pos <= width+1); /* 0 or width+1 mean that the center light is behind the corner */ if (pos > 1) { - if (pos > 2) { - memset(p, ' ', pos-2); - p += pos-2; - } + if (pos > 2) + p = mempset(p, ' ', pos-2); p = stpcpy(p, ANSI_RED_ON); *p++ = '*'; } @@ -244,10 +242,8 @@ static void draw_cylon(char buffer[], size_t buflen, unsigned width, unsigned po if (pos < width) { p = stpcpy(p, ANSI_RED_ON); *p++ = '*'; - if (pos < width-1) { - memset(p, ' ', width-1-pos); - p += width-1-pos; - } + if (pos < width-1) + p = mempset(p, ' ', width-1-pos); p = stpcpy(p, ANSI_HIGHLIGHT_OFF); } } diff --git a/src/shared/util.h b/src/shared/util.h index 04c9fcd71e..f0dfe19ad4 100644 --- a/src/shared/util.h +++ b/src/shared/util.h @@ -594,3 +594,8 @@ int search_and_fopen_nulstr(const char *path, const char *mode, const char *sear } else if (ignore_file((de)->d_name)) \ continue; \ else + +static inline void *mempset(void *s, int c, size_t n) { + memset(s, c, n); + return (char*)s + n; +} |