super :header => header, :body => (opts[:body] || [])
   end
+
+  def edit_message
+    edited = super
+    BufferManager.kill_buffer self.buffer unless edited
+    edited
+  end
 end
 
 end
 
     BufferManager.shell_out "#{editor} #{@file.path}"
     @edited = true if File.mtime(@file.path) > mtime
 
-    BufferManager.kill_buffer self.buffer unless @edited
+    return @edited unless @edited
 
     header, @body = parse_file @file.path
     @header = header - NON_EDITABLE_HEADERS
     handle_new_text @header, @body
     update
+
+    @edited
   end
 
   def killable?