srctree

Gregory Mullen parent c5cc40e4 21016017
add utf-8 back as the default to fix a issue in srctree (firefox)

src/content-type.zig added: 16, removed: 6, total 10
@@ -1,7 +1,10 @@
base: ContentBase,
parameter: ?CharSet = null,
 
pub const default: ContentType = .{ .base = .{ .text = .html } };
pub const default: ContentType = .{
.base = .{ .text = .html },
.parameter = .@"utf-8",
};
 
pub const ContentType = @This();
 
@@ -112,14 +115,13 @@ pub fn string(comptime ct: ContentType) []const u8 {
}
 
test string {
try std.testing.expectEqualStrings("text/html", default.string());
try std.testing.expectEqualStrings("text/html; charset=utf-8", default.string());
try std.testing.expectEqualStrings("image/png", (ContentType{ .base = .{ .image = .png } }).string());
 
try std.testing.expectEqualStrings(
"text/html; charset=utf-8",
"text/html",
(ContentType{
.base = .{ .text = .html },
.parameter = .@"utf-8",
}).string(),
);
}
 
src/verse.zig added: 16, removed: 6, total 10
@@ -197,6 +197,14 @@ pub fn sendHeaders(vrs: *Verse) !void {
count += 1;
},
}
if (ct.parameter) |param| {
const pre = "; charset=";
vect[count] = .{ .base = pre.ptr, .len = pre.len };
count += 1;
const tag = @tagName(param);
vect[count] = .{ .base = tag.ptr, .len = tag.len };
count += 1;
}
 
vect[count] = .{ .base = "\r\n".ptr, .len = "\r\n".len };
count += 1;