]> git.webhop.me Git - shellexec.git/commitdiff
fix usage of ~d (degree) & TranslateString() of a single char
authorGetAway <get-away@t-online.de>
Fri, 25 Nov 2016 07:16:15 +0000 (08:16 +0100)
committersvenhoefer <svenhoefer@svenhoefer.com>
Fri, 25 Nov 2016 08:24:45 +0000 (09:24 +0100)
shellexec.c
text.c

index 2692ebb7ece0714eea27fb70cb73967151786c8d..73383e0b1a034d2389d8528e3c5a47080c7fb1c5 100644 (file)
@@ -8,7 +8,7 @@
 #include "io.h"
 #include "gfx.h"
 
-#define SH_VERSION 1.31
+#define SH_VERSION 1.32
 
 static char CFG_FILE[128]="/var/tuxbox/config/shellexec.conf";
 
diff --git a/text.c b/text.c
index 94f5a6ce8b019f79c0a6c5a003a8b7dcca173b87..18aaf493c94abe276ac2a7ec6f29737c7276f4b6 100644 (file)
--- a/text.c
+++ b/text.c
@@ -126,21 +126,21 @@ void TranslateString(char *src, size_t size)
        fptr = tptr_start;
        tptr = src;
        char *tptr_end = src + size - 4;
-       while (*fptr && tptr < tptr_end) {
+       while (*fptr && tptr <= tptr_end) {
                if (*fptr == '~') {
                        fptr++;
                        int i;
                        for (i = 0; sc[i] && (sc[i] != *fptr); i++);
-                       if (sc[i]) {
-                               *tptr++ = 0xC3;
-                               *tptr++ = su[i];
-                               fptr++;
-                       } else if (*fptr == 'd') {
-                               *tptr++ = 0xC2;
-                               *tptr++ = 0xb0;
-                               fptr++;
-                       } else
-                               *tptr++ = '~';
+                               if (*fptr == 'd') {
+                                       *tptr++ = 0xC2;
+                                       *tptr++ = 0xb0;
+                                       fptr++;
+                               } else if (sc[i]) {
+                                       *tptr++ = 0xC3;
+                                       *tptr++ = su[i];
+                                       fptr++;
+                               } else
+                                       *tptr++ = '~';
                } else
                        CopyUTF8Char(&tptr, &fptr);
        }