summaryrefslogtreecommitdiff
path: root/src/KeyReader.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/KeyReader.zig')
-rw-r--r--src/KeyReader.zig16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/KeyReader.zig b/src/KeyReader.zig
index 2265975..28e6dcb 100644
--- a/src/KeyReader.zig
+++ b/src/KeyReader.zig
@@ -83,7 +83,7 @@ fn readByte(reader: File.Reader) Error!?u8 {
83 return reader.readByte() catch |err| switch (err) { 83 return reader.readByte() catch |err| switch (err) {
84 error.WouldBlock => null, 84 error.WouldBlock => null,
85 error.EndOfStream => null, 85 error.EndOfStream => null,
86 else => return @errSetCast(File.Reader.Error, err), 86 else => return @as(Error, @errorCast(err)),
87 }; 87 };
88} 88}
89 89
@@ -135,7 +135,7 @@ fn readControlSequence(self: *KeyReader, reader: File.Reader) !Key {
135 if (parameter_list.len == 0) { 135 if (parameter_list.len == 0) {
136 return key; 136 return key;
137 } else if (parameter_list.len == 1) { 137 } else if (parameter_list.len == 1) {
138 var count = std.math.max(1, parameter_list[0]) - 1; 138 var count = @max(1, parameter_list[0]) - 1;
139 try self.key_buf.ensureUnusedCapacity(count); 139 try self.key_buf.ensureUnusedCapacity(count);
140 while (count > 0) : (count -= 1) { 140 while (count > 0) : (count -= 1) {
141 self.key_buf.appendAssumeCapacity(key); 141 self.key_buf.appendAssumeCapacity(key);
@@ -143,7 +143,7 @@ fn readControlSequence(self: *KeyReader, reader: File.Reader) !Key {
143 143
144 return key; 144 return key;
145 } else if (parameter_list.len == 2) { 145 } else if (parameter_list.len == 2) {
146 var count = std.math.max(1, parameter_list[0]) - 1; 146 var count = @max(1, parameter_list[0]) - 1;
147 if (modKey(key, parameter_list[1])) |mod_key| { 147 if (modKey(key, parameter_list[1])) |mod_key| {
148 try self.key_buf.ensureUnusedCapacity(count); 148 try self.key_buf.ensureUnusedCapacity(count);
149 while (count > 0) : (count -= 1) { 149 while (count > 0) : (count -= 1) {
@@ -159,7 +159,7 @@ fn readControlSequence(self: *KeyReader, reader: File.Reader) !Key {
159 159
160 std.log.err( 160 std.log.err(
161 "Unknown terminal sequence '^[[{s}{s}{c}'", 161 "Unknown terminal sequence '^[[{s}{s}{c}'",
162 .{parameters.items, intermediates.items, final}, 162 .{ parameters.items, intermediates.items, final },
163 ); 163 );
164 164
165 try self.key_buf.ensureUnusedCapacity(parameters.items.len + intermediates.items.len + 1); 165 try self.key_buf.ensureUnusedCapacity(parameters.items.len + intermediates.items.len + 1);
@@ -169,7 +169,7 @@ fn readControlSequence(self: *KeyReader, reader: File.Reader) !Key {
169 } else { 169 } else {
170 std.log.err( 170 std.log.err(
171 "Unknown terminal sequence '^[[{s}{s}'", 171 "Unknown terminal sequence '^[[{s}{s}'",
172 .{parameters.items, intermediates.items}, 172 .{ parameters.items, intermediates.items },
173 ); 173 );
174 } 174 }
175 175
@@ -212,11 +212,13 @@ fn splitParameters(allocator: Allocator, parameters_string: []const u8) Allocato
212 usize, 212 usize,
213 parameter_string, 213 parameter_string,
214 10, 214 10,
215 ) catch { return null; }; 215 ) catch {
216 return null;
217 };
216 218
217 try parameters.append(parameter); 219 try parameters.append(parameter);
218 } 220 }
219 } 221 }
220 222
221 return parameters.toOwnedSlice(); 223 return try parameters.toOwnedSlice();
222} 224}