On Tuesday, 13 December 2016 at 00:54:43 UTC, Adam D. Ruppe wrote:
On Tuesday, 13 December 2016 at 00:48:44 UTC, bachmeier wrote:
a range violation error core.exception.RangeError@test.d(109):
Range violation
What's that line of your code too?
Here is a minimal program that can replicate the problem.
Compiled and run with
dmd finderror.d cgi.d -version=embedded_httpd
./finderror
import arsd.cgi;
import std.array, std.conv, std.datetime, std.file, std.process;
string input() {
return `<form action="submission" method="post">
<textarea name="note" rows="28" cols="95"></textarea><br>
<input type="submit" value="Send">
</form>`;
}
string simpleHtmlEncode(string s) {
return s.replace("&", "&").
replace("<", "<").replace(">", ">");
}
void handler(Cgi cgi) {
cgi.setResponseContentType("text/html; charset=UTF-8");
string data;
switch (cgi.pathInfo.simpleHtmlEncode()) {
case "/":
data = input();
break;
case "/submission":
string foo = cgi.post["note"];
break;
default:
data = "Not a valid page. Try again.";
break;
}
cgi.write(data, true);
}
mixin GenericMain!handler;