21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#include "encode.h"
/*
** Make the given string safe for HTML by converting every "<" into "<",
** every ">" into ">" and every "&" into "&". Return a pointer
** to a new string obtained from malloc().
**
** We also encode " as " so that it can appear as an argument
** to markup.
*/
char *htmlize(const char *zIn, int n){
int c;
int i = 0;
int count = 0;
char *zOut;
|
|
|
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#include "encode.h"
/*
** Make the given string safe for HTML by converting every "<" into "<",
** every ">" into ">" and every "&" into "&". Return a pointer
** to a new string obtained from malloc().
**
** We also encode " as " and ' as ' so they can appear as an argument
** to markup.
*/
char *htmlize(const char *zIn, int n){
int c;
int i = 0;
int count = 0;
char *zOut;
|
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
zOut[i++] = '&';
zOut[i++] = 'q';
zOut[i++] = 'u';
zOut[i++] = 'o';
zOut[i++] = 't';
zOut[i++] = ';';
break;
default:
zOut[i++] = c;
break;
}
zIn++;
}
zOut[i] = 0;
|
>
>
>
>
>
>
>
|
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
zOut[i++] = '&';
zOut[i++] = 'q';
zOut[i++] = 'u';
zOut[i++] = 'o';
zOut[i++] = 't';
zOut[i++] = ';';
break;
case '\'':
zOut[i++] = '&';
zOut[i++] = '#';
zOut[i++] = '3';
zOut[i++] = '9';
zOut[i++] = ';';
break;
default:
zOut[i++] = c;
break;
}
zIn++;
}
zOut[i] = 0;
|
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
blob_append(p, "&", 5);
j = i+1;
break;
case '"':
if( j<i ) blob_append(p, zIn+j, i-j);
blob_append(p, """, 6);
j = i+1;
break;
}
}
if( j<i ) blob_append(p, zIn+j, i-j);
}
|
>
>
>
>
>
|
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
blob_append(p, "&", 5);
j = i+1;
break;
case '"':
if( j<i ) blob_append(p, zIn+j, i-j);
blob_append(p, """, 6);
j = i+1;
break;
case '\'':
if( j<i ) blob_append(p, zIn+j, i-j);
blob_append(p, "'", 5);
j = i+1;
break;
}
}
if( j<i ) blob_append(p, zIn+j, i-j);
}
|