浏览代码

ADDED: Security checks

pull/2939/head
Ray 2 年前
父节点
当前提交
d652b95fbf
共有 1 个文件被更改,包括 30 次插入21 次删除
  1. +30
    -21
      src/rtext.c

+ 30
- 21
src/rtext.c 查看文件

@ -1568,17 +1568,20 @@ const char *TextToUpper(const char *text)
static char buffer[MAX_TEXT_BUFFER_LENGTH] = { 0 }; static char buffer[MAX_TEXT_BUFFER_LENGTH] = { 0 };
memset(buffer, 0, MAX_TEXT_BUFFER_LENGTH); memset(buffer, 0, MAX_TEXT_BUFFER_LENGTH);
for (int i = 0; i < MAX_TEXT_BUFFER_LENGTH; i++) if (text != NULL)
{ {
if (text[i] != '\0') for (int i = 0; i < MAX_TEXT_BUFFER_LENGTH; i++)
{ {
buffer[i] = (char)toupper(text[i]); if (text[i] != '\0')
//if ((text[i] >= 'a') && (text[i] <= 'z')) buffer[i] = text[i] - 32; {
buffer[i] = (char)toupper(text[i]);
//if ((text[i] >= 'a') && (text[i] <= 'z')) buffer[i] = text[i] - 32;
// TODO: Support UTF-8 diacritics to upper-case // TODO: Support UTF-8 diacritics to upper-case
//if ((text[i] >= 'à') && (text[i] <= 'ý')) buffer[i] = text[i] - 32; //if ((text[i] >= 'à') && (text[i] <= 'ý')) buffer[i] = text[i] - 32;
}
else { buffer[i] = '\0'; break; }
} }
else { buffer[i] = '\0'; break; }
} }
return buffer; return buffer;
@ -1591,14 +1594,17 @@ const char *TextToLower(const char *text)
static char buffer[MAX_TEXT_BUFFER_LENGTH] = { 0 }; static char buffer[MAX_TEXT_BUFFER_LENGTH] = { 0 };
memset(buffer, 0, MAX_TEXT_BUFFER_LENGTH); memset(buffer, 0, MAX_TEXT_BUFFER_LENGTH);
for (int i = 0; i < MAX_TEXT_BUFFER_LENGTH; i++) if (text != NULL)
{ {
if (text[i] != '\0') for (int i = 0; i < MAX_TEXT_BUFFER_LENGTH; i++)
{ {
buffer[i] = (char)tolower(text[i]); if (text[i] != '\0')
//if ((text[i] >= 'A') && (text[i] <= 'Z')) buffer[i] = text[i] + 32; {
buffer[i] = (char)tolower(text[i]);
//if ((text[i] >= 'A') && (text[i] <= 'Z')) buffer[i] = text[i] + 32;
}
else { buffer[i] = '\0'; break; }
} }
else { buffer[i] = '\0'; break; }
} }
return buffer; return buffer;
@ -1611,20 +1617,23 @@ const char *TextToPascal(const char *text)
static char buffer[MAX_TEXT_BUFFER_LENGTH] = { 0 }; static char buffer[MAX_TEXT_BUFFER_LENGTH] = { 0 };
memset(buffer, 0, MAX_TEXT_BUFFER_LENGTH); memset(buffer, 0, MAX_TEXT_BUFFER_LENGTH);
buffer[0] = (char)toupper(text[0]); if (text != NULL)
for (int i = 1, j = 1; i < MAX_TEXT_BUFFER_LENGTH; i++, j++)
{ {
if (text[j] != '\0') buffer[0] = (char)toupper(text[0]);
for (int i = 1, j = 1; i < MAX_TEXT_BUFFER_LENGTH; i++, j++)
{ {
if (text[j] != '_') buffer[i] = text[j]; if (text[j] != '\0')
else
{ {
j++; if (text[j] != '_') buffer[i] = text[j];
buffer[i] = (char)toupper(text[j]); else
{
j++;
buffer[i] = (char)toupper(text[j]);
}
} }
else { buffer[i] = '\0'; break; }
} }
else { buffer[i] = '\0'; break; }
} }
return buffer; return buffer;

||||||
x
 
000:0
正在加载...
取消
保存