diff --git a/src/client-cohttp-lwt/common_.ml b/src/client-cohttp-lwt/common_.ml index 4de037c4..a082ff1f 100644 --- a/src/client-cohttp-lwt/common_.ml +++ b/src/client-cohttp-lwt/common_.ml @@ -23,7 +23,11 @@ let get_url () = !url let set_url s = url := s let parse_headers s = - let parse_header s = Scanf.sscanf s "%s@=%s" (fun key value -> key, value) in + let parse_header s = + match String.split_on_char '=' s with + | [ key; value ] -> key, value + | _ -> failwith "Unexpected format for header" + in String.split_on_char ',' s |> List.map parse_header let default_headers = [] diff --git a/src/client-ocurl/common_.ml b/src/client-ocurl/common_.ml index 3b7c8089..592a4462 100644 --- a/src/client-ocurl/common_.ml +++ b/src/client-ocurl/common_.ml @@ -28,7 +28,11 @@ let[@inline] with_mutex_ m f = Fun.protect ~finally:(fun () -> Mutex.unlock m) f let parse_headers s = - let parse_header s = Scanf.sscanf s "%s@=%s" (fun key value -> key, value) in + let parse_header s = + match String.split_on_char '=' s with + | [ key; value ] -> key, value + | _ -> failwith "Unexpected format for header" + in String.split_on_char ',' s |> List.map parse_header let default_headers = []