History

Reimplement padcat

malc committed 6 years ago

Commit 731a83a1 parent 87ffd0b1 file · +11 −12Browse files

Unified · Split

wsi/x11/wsi.ml+11−12
@@ -273,20 +273,19 @@ let sendwithrep sock s f = · 272 unmodified lines
273 sendstr1 s 0 (Bytes.length s) sock;273 sendstr1 s 0 (Bytes.length s) sock;
274;;274;;
275 275
276let padcatl =276let padcat =
277 let pad = "123" in277 let pad = Bytes.create 3 in fun b1 b2 ->
278 fun ss ->278 let l1 = Bytes.length b1 and l2 = Bytes.length b2 in
279 let b = Buffer.create 16 in279 let l = (l1 + l2) land 3 in
280 List.iter (Buffer.add_bytes b) ss;280 let pl = if l > 0 then 4 - l else 0 in
281 let bl = Buffer.length b in281 let b = Bytes.create (l1 + l2 + pl) in
282 let pl = bl land 3 in282 Bytes.blit b1 0 b 0 l1;
283 if pl != 0283 Bytes.blit b2 0 b l1 l2;
284 then Buffer.add_substring b pad 0 (4 - pl);284 if pl > 0
285 Buffer.to_bytes b;285 then Bytes.blit pad 0 b (l1 + l2) pl;
286 b;
286;;287;;
287 288
288let padcat s1 s2 = padcatl [s1; s2];;
289
290let internreq name onlyifexists =289let internreq name onlyifexists =
291 let s = makereq 16 8 8 in290 let s = makereq 16 8 8 in
292 let s = padcat s name in291 let s = padcat s name in

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t