comparison src/lib/strescape.c @ 1216:3784730cfcd8 HEAD

str_unescape(): return char*
author Timo Sirainen <tss@iki.fi>
date Thu, 20 Feb 2003 18:30:51 +0200
parents fd8888f6f037
children ae229b7acb4c
comparison
equal deleted inserted replaced
1215:69bd0ea4c718 1216:3784730cfcd8
69 i++; 69 i++;
70 start = i; 70 start = i;
71 } 71 }
72 } 72 }
73 73
74 void str_unescape(char *str) 74 char *str_unescape(char *str)
75 { 75 {
76 /* @UNSAFE */ 76 /* @UNSAFE */
77 char *dest; 77 char *dest, *start = str;
78 78
79 while (*str != '\\') { 79 while (*str != '\\') {
80 if (*str == '\0') 80 if (*str == '\0')
81 return; 81 return start;
82 str++; 82 str++;
83 } 83 }
84 84
85 for (dest = str; *str != '\0'; str++) { 85 for (dest = str; *str != '\0'; str++) {
86 if (*str != '\\' || str[1] == '\0') 86 if (*str != '\\' || str[1] == '\0')
87 *dest++ = *str; 87 *dest++ = *str;
88 } 88 }
89 89
90 *dest = '\0'; 90 *dest = '\0';
91 return start;
91 } 92 }