X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=sparsify%2Futils.ml;fp=sparsify%2Futils.ml;h=b7c531d8744539a3c068e5c1b08204c8e5ce103b;hb=342b4a55d056734a0344db8b4bcf1a90104a8a59;hp=4f5631d6de26bd659088d2655b4ceb83095e2701;hpb=0cdd9444744e7ae0d82fe4c94d13e9ddd00e8e2d;p=libguestfs.git diff --git a/sparsify/utils.ml b/sparsify/utils.ml index 4f5631d..b7c531d 100644 --- a/sparsify/utils.ml +++ b/sparsify/utils.ml @@ -57,6 +57,25 @@ let string_prefix str prefix = let n = String.length prefix in String.length str >= n && String.sub str 0 n = prefix +let rec string_find s sub = + let len = String.length s in + let sublen = String.length sub in + let rec loop i = + if i <= len-sublen then ( + let rec loop2 j = + if j < sublen then ( + if s.[i+j] = sub.[j] then loop2 (j+1) + else -1 + ) else + i (* found *) + in + let r = loop2 0 in + if r = -1 then loop (i+1) else r + ) else + -1 (* not found *) + in + loop 0 + let string_random8 = let chars = "abcdefghijklmnopqrstuvwxyz0123456789" in fun () ->