Don't overwrite the body if there are no changes.

Fixes issue #1 .
In fact, I would call it something like "sameSize" and move the equalsBody (renamed to bodyDiff?) inside the if-statement so that all of the logic handling a change is in the same condition:

if !sameSize {
  switch diff, err := bodyDiff(ffile); {
  case err != nil:
    fmt.Fprintf(os.Stderr, "failed to diff the body: ", err)
    fallthrough // Not fatal. Re-write the body anyway.
  case diff:
    // No need for a separate writeFile function.
    // It's not writing a file, it's writing the body and setting the address.
    // Just do them both here.
    if err := writeBody(win, ffile); err != nil {...}
    if err := showAddr(win, q0, q1); err != nil { ... }
  }
}