src/Pure/ML/ml_heap.scala
changeset 78958 c125f75a5144
parent 78956 12abaffb0346
child 79677 49370f0f7911
equal deleted inserted replaced
78957:932b2a7139e2 78958:c125f75a5144
    19 
    19 
    20   def read_file_digest(heap: Path): Option[SHA1.Digest] = {
    20   def read_file_digest(heap: Path): Option[SHA1.Digest] = {
    21     if (heap.is_file) {
    21     if (heap.is_file) {
    22       val l = sha1_prefix.length
    22       val l = sha1_prefix.length
    23       val m = l + SHA1.digest_length
    23       val m = l + SHA1.digest_length
    24       val n = heap.file.length
    24       val n = File.size(heap)
    25       val bs = Bytes.read_file(heap, offset = n - m)
    25       val bs = Bytes.read_file(heap, offset = n - m)
    26       if (bs.length == m) {
    26       if (bs.length == m) {
    27         val s = bs.text
    27         val s = bs.text
    28         if (s.startsWith(sha1_prefix)) Some(SHA1.fake_digest(s.substring(l)))
    28         if (s.startsWith(sha1_prefix)) Some(SHA1.fake_digest(s.substring(l)))
    29         else None
    29         else None