Skip to content

Commit

Permalink
Finish intial version of FinalizeChanges
Browse files Browse the repository at this point in the history
  • Loading branch information
mkchoi212 committed Dec 31, 2017
1 parent b7b7aa5 commit 4dd10fd
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 11 deletions.
4 changes: 2 additions & 2 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -114,8 +114,8 @@ func main() {
g.Close()

for fname := range allFileLines {
if err := WriteChanges(fname); err != nil {
fmt.Println(err)
if err := FinalizeChanges(fname); err != nil {
fmt.Println(Red(Highlight, "%s\n", err))
}
}
printSummary()
Expand Down
35 changes: 26 additions & 9 deletions summary.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package main

import (
"bufio"
"bytes"
"fmt"
"os"

"github.com/jroimartin/gocui"
)
Expand Down Expand Up @@ -59,8 +61,25 @@ func conflictsIn(fname string) (list []Conflict) {
return
}

func WriteChanges(fname string) error {
targetConflicts := conflictsIn(fname)
func writeChanges(absPath string) (err error) {
f, err := os.Create(absPath)
if err != nil {
return
}
defer f.Close()

w := bufio.NewWriter(f)
for _, line := range allFileLines[absPath] {
if _, err = w.WriteString(line); err != nil {
return
}
}
err = w.Flush()
return
}

func FinalizeChanges(absPath string) (err error) {
targetConflicts := conflictsIn(absPath)

var replacementLines []string

Expand All @@ -73,17 +92,15 @@ func WriteChanges(fname string) error {

i := 0
for ; i < len(replacementLines); i++ {
allFileLines[fname][c.Start+i-1] = replacementLines[i]
allFileLines[absPath][c.Start+i-1] = replacementLines[i]
}
for ; c.End-c.Start >= i; i++ {
allFileLines[fname][c.Start+i-1] = ""
allFileLines[absPath][c.Start+i-1] = ""
}
}

for _, l := range allFileLines[fname] {
if l != "" {
fmt.Printf(l)
}
if err = writeChanges(absPath); err != nil {
return
}
return nil
return
}

0 comments on commit 4dd10fd

Please sign in to comment.