Mention undiffable variants in annotations, write -2 in hgvs matrix.
[lightning.git] / diff.go
diff --git a/diff.go b/diff.go
index 2740104cf8b0a500248608a9ea1d00da2dee4200..4a328ac75600645b934cd4a9b972fa83c06273b1 100644 (file)
--- a/diff.go
+++ b/diff.go
@@ -1,4 +1,8 @@
-package main
+// Copyright (C) The Lightning Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
+package lightning
 
 import (
        "bufio"
@@ -49,6 +53,7 @@ func (cmd *diffFasta) RunCommand(prog string, args []string, stdin io.Reader, st
                        }
                        defer f.Close()
                        scanner := bufio.NewScanner(f)
+                       scanner.Buffer(nil, 64*1024*1024)
                        for scanner.Scan() {
                                buf := scanner.Bytes()
                                if len(buf) > 0 && buf[0] != '>' {
@@ -64,14 +69,14 @@ func (cmd *diffFasta) RunCommand(prog string, args []string, stdin io.Reader, st
                }
        }
 
-       variants := hgvs.Diff(string(fasta[0]), string(fasta[1]), *timeout)
+       variants, timedOut := hgvs.Diff(string(fasta[0]), string(fasta[1]), *timeout)
        if *offset != 0 {
                for i := range variants {
                        variants[i].Position += *offset
                }
        }
        for _, v := range variants {
-               fmt.Fprintf(stdout, "%s:g.%s\t%s\t%d\t%s\t%s\n", *sequence, v.String(), *sequence, v.Position, v.Ref, v.New)
+               fmt.Fprintf(stdout, "%s:g.%s\t%s\t%d\t%s\t%s\t%v\n", *sequence, v.String(), *sequence, v.Position, v.Ref, v.New, timedOut)
        }
        return 0
 }