summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/example.ec20
1 files changed, 19 insertions, 1 deletions
diff --git a/examples/example.ec b/examples/example.ec
index 06e7961..1a1787f 100644
--- a/examples/example.ec
+++ b/examples/example.ec
@@ -1,12 +1,14 @@
<%
#include <stdio.h>
+void escape(char *str, FILE *out);
+
int main(int argc, char *argv[])
{
int i;
%>
-<p>Hello <%= "%s", argv[0] %>!</p>
+<p>Hello <%== argv[0] %>!</p>
<table>
<tbody>
<% for (i = 1; i < argc; i++) { %>
@@ -21,4 +23,20 @@ int main(int argc, char *argv[])
return 0;
}
+
+void escape(char *str, FILE *out)
+{
+ char *pch;
+ for (pch = str; *pch != '\0'; pch++) {
+ switch (*pch) {
+ case '&': fputs("&amp;", out); break;
+ case '>': fputs("&gt;", out); break;
+ case '<': fputs("&lt;", out); break;
+ case '"': fputs("&quot;", out); break;
+ case '\'': fputs("&#039;", out); break;
+ default: fputc(*pch, out);
+ }
+ }
+}
+
%>