зеркало из https://github.com/mozilla/gecko-dev.git
Added PRUnichar version of escape function, bug 34373, r=rhp, a=bobj.
This commit is contained in:
Родитель
23c19b3359
Коммит
3fc67a80b0
|
@ -222,3 +222,57 @@ nsEscapeHTML(const char * string)
|
|||
|
||||
return(rv);
|
||||
}
|
||||
|
||||
NS_COM PRUnichar *
|
||||
nsEscapeHTML2(const PRUnichar * string)
|
||||
{
|
||||
PRUnichar *rv = (PRUnichar *) nsMemory::Alloc(nsCRT::strlen(string)*6*sizeof(PRUnichar) + sizeof(PRUnichar));
|
||||
PRUnichar *ptr = rv;
|
||||
|
||||
if(rv)
|
||||
{
|
||||
for(; *string != 0; string++)
|
||||
{
|
||||
if(*string == '<')
|
||||
{
|
||||
*ptr++ = '&';
|
||||
*ptr++ = 'l';
|
||||
*ptr++ = 't';
|
||||
*ptr++ = ';';
|
||||
}
|
||||
else if(*string == '>')
|
||||
{
|
||||
*ptr++ = '&';
|
||||
*ptr++ = 'g';
|
||||
*ptr++ = 't';
|
||||
*ptr++ = ';';
|
||||
}
|
||||
else if(*string == '&')
|
||||
{
|
||||
*ptr++ = '&';
|
||||
*ptr++ = 'a';
|
||||
*ptr++ = 'm';
|
||||
*ptr++ = 'p';
|
||||
*ptr++ = ';';
|
||||
}
|
||||
else if (*string == '"')
|
||||
{
|
||||
*ptr++ = '&';
|
||||
*ptr++ = 'q';
|
||||
*ptr++ = 'u';
|
||||
*ptr++ = 'o';
|
||||
*ptr++ = 't';
|
||||
*ptr++ = ';';
|
||||
}
|
||||
else
|
||||
{
|
||||
*ptr++ = *string;
|
||||
}
|
||||
}
|
||||
*ptr = 0;
|
||||
}
|
||||
|
||||
return(rv);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -59,6 +59,9 @@ NS_COM PRInt32 nsUnescapeCount (char * str);
|
|||
|
||||
NS_COM char *
|
||||
nsEscapeHTML(const char * string);
|
||||
|
||||
NS_COM PRUnichar *
|
||||
nsEscapeHTML2(const PRUnichar * string);
|
||||
/*
|
||||
* Escape problem char's for HTML display
|
||||
*/
|
||||
|
|
Загрузка…
Ссылка в новой задаче