From b2a3b644e99b47dacfca344649eb8be0b512e261 Mon Sep 17 00:00:00 2001 From: ellson Date: Fri, 8 Sep 2006 15:47:07 +0000 Subject: [PATCH] Fix #1016 --- lib/common/labels.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/common/labels.c b/lib/common/labels.c index e5eb65e97..dfadd2a4c 100644 --- a/lib/common/labels.c +++ b/lib/common/labels.c @@ -237,6 +237,7 @@ char *strdup_and_subst_obj(char *str, void *obj) char *g_str = "\\G", *n_str = "\\N", *e_str = "\\E", *h_str = "\\H", *t_str = "\\T"; int g_len = 2, n_len = 2, e_len = 2, h_len = 2, t_len = 2, newlen = 0; + /* prepare substitution strings */ switch (agobjkind(obj)) { case AGGRAPH: g_str = ((graph_t *)obj)->name; @@ -285,7 +286,9 @@ char *strdup_and_subst_obj(char *str, void *obj) break; case 'T': newlen += t_len; - break; + break; + default: /* leave other escape sequences unmodified, e.g. \n \l \r */ + newlen += 2; } } else { newlen++; @@ -315,7 +318,7 @@ char *strdup_and_subst_obj(char *str, void *obj) case 'H': for (t = h_str; (*p = *t++); p++); break; - default: + default: /* leave other escape sequences unmodified, e.g. \n \l \r */ *p++ = '\\'; *p++ = c; break; -- 2.50.1