summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ProcessList.c2
-rw-r--r--RichString.c4
-rw-r--r--RichString.h2
3 files changed, 7 insertions, 1 deletions
diff --git a/ProcessList.c b/ProcessList.c
index 585a9194..4dfbe21d 100644
--- a/ProcessList.c
+++ b/ProcessList.c
@@ -113,7 +113,7 @@ void ProcessList_printHeader(const ProcessList* this, RichString* header) {
RichString_appendWide(header, color, alignedProcessFieldTitle(fields[i]));
if (key == fields[i] && RichString_getCharVal(*header, RichString_size(header) - 1) == ' ') {
- header->chlen--; // rewind to override space
+ RichString_rewind(header, 1); // rewind to override space
RichString_appendnWide(header,
CRT_colors[PANEL_SELECTION_FOCUS],
CRT_treeStr[Settings_getActiveDirection(this->settings) == 1 ? TREE_STR_DESC : TREE_STR_ASC],
diff --git a/RichString.c b/RichString.c
index 5a2c2e14..c4ecc258 100644
--- a/RichString.c
+++ b/RichString.c
@@ -46,6 +46,10 @@ static void RichString_setLen(RichString* this, int len) {
}
}
+void RichString_rewind(RichString* this, int count) {
+ RichString_setLen(this, this->chlen - count);
+}
+
#ifdef HAVE_LIBNCURSESW
static inline int RichString_writeFromWide(RichString* this, int attrs, const char* data_c, int from, int len) {
diff --git a/RichString.h b/RichString.h
index 7464fff1..d317cb2e 100644
--- a/RichString.h
+++ b/RichString.h
@@ -42,6 +42,8 @@ typedef struct RichString_ {
int highlightAttr;
} RichString;
+void RichString_rewind(RichString* this, int count);
+
void RichString_setAttrn(RichString* this, int attrs, int start, int charcount);
int RichString_findChar(const RichString* this, char c, int start);