diff options
author | Lucas de Castro Borges <lucas@gnuabordo.com.br> | 2024-04-22 19:19:51 -0300 |
---|---|---|
committer | Lucas de Castro Borges <lucas@gnuabordo.com.br> | 2024-04-22 19:19:51 -0300 |
commit | 0574020490ffae5686b0c75d7753bfbcf2286114 (patch) | |
tree | 4737ad2276b41819178efdb5360ae7c2b4b559fe /deps/sysobj_early/src/nice_name.c | |
parent | 6c855997ca4a18e3e578faaae073db71c80849ad (diff) |
New upstream version 2.0.17preupstream/2.0.17pre
Diffstat (limited to 'deps/sysobj_early/src/nice_name.c')
-rw-r--r-- | deps/sysobj_early/src/nice_name.c | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/deps/sysobj_early/src/nice_name.c b/deps/sysobj_early/src/nice_name.c index e5e15a46..fdb4557c 100644 --- a/deps/sysobj_early/src/nice_name.c +++ b/deps/sysobj_early/src/nice_name.c @@ -34,11 +34,15 @@ gboolean str_shorten(gchar *str, const gchar *find, const gchar *replace) { long unsigned lr = strlen(replace); gchar *p = strstr(str, find); if (p) { - if (lr > lf) lr = lf; - gchar *buff = g_strnfill(lf, ' '); - strncpy(buff, replace, lr); - strncpy(p, buff, lf); - g_free(buff); + if(lr==lf){ + strncpy(p, replace, lf); + } else { + if (lr > lf) lr = lf; + gchar *buff = g_strnfill(lf, ' '); + if(lr) strncpy(buff, replace, lr); + strncpy(p, buff, lf); + g_free(buff); + } return TRUE; } return FALSE; @@ -50,11 +54,15 @@ gboolean str_shorten_anycase(gchar *str, const gchar *find, const gchar *replace long unsigned lr = strlen(replace); gchar *p = strcasestr(str, find); if (p) { - if (lr > lf) lr = lf; - gchar *buff = g_strnfill(lf, ' '); - strncpy(buff, replace, lr); - strncpy(p, buff, lf); - g_free(buff); + if(lr==lf){ + strncpy(p, replace, lf); + } else { + if (lr > lf) lr = lf; + gchar *buff = g_strnfill(lf, ' '); + if(lr) strncpy(buff, replace, lr); + strncpy(p, buff, lf); + g_free(buff); + } return TRUE; } return FALSE; |