Subject: 23.1; diff-hunk-kill -vs- final hunk in a file
From: Tom Tromey <[email-masked]>
To: [email-masked]
Date: Mon, 07 Sep 2009 22:13:27 -0600

Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the [email-masked] mailing list,
and to the gnu.emacs.bug news group.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

I'm using diff-mode to edit a patch.
The patch was generated by "git diff".
I typed M-k to remove the last hunk in a file.
However, it left the "header" around:

    diff --git a/src/data.c b/src/data.c
    index 7b59673..9063cef 100644
    --- a/src/data.c
    +++ b/src/data.c
    diff --git a/src/eval.c b/src/eval.c
    index 4b7aa32..dbaa385 100644
    --- a/src/eval.c
    [...]

This yielded an invalid patch.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/usr/share/emacs/23.1/etc/DEBUG for instructions.

In GNU Emacs 23.1.1 (i386-redhat-linux-gnu, GTK+ Version 2.16.5)
 of 2009-08-24 on x86-2.fedora.phx.redhat.com
Windowing system distributor `The X.Org Foundation', version 11.0.10601901
configured using `configure  '--build=i386-redhat-linux-gnu' '--host=i386-redhat-linux-gnu' '--target=i586-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--with-dbus' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xft' '--with-xpm' '--with-x-toolkit=gtk' 'build_alias=i386-redhat-linux-gnu' 'host_alias=i386-redhat-linux-gnu' 'target_alias=i586-redhat-linux-gnu' 'CFLAGS=-DMAIL_USE_LOCKF -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i586 -mtune=generic -fasynchronous-unwind-tables''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: Diff

Minor modes in effect:
  shell-dirtrack-mode: t
  diff-auto-refine-mode: t
  erc-list-mode: t
  erc-menu-mode: t
  erc-autojoin-mode: t
  erc-ring-mode: t
  erc-pcomplete-mode: t
  erc-track-mode: t
  erc-track-minor-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-netsplit-mode: t
  erc-spelling-mode: t
  erc-truncate-mode: t
  erc-status-mode: t
  erc-services-mode: t
  erc-networks-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
g i t - r e v e r t RET C-x o C-x 1 C-v C-v C-l ESC 
v C-x b * s h TAB RET f r o m RET C-x b RET C-l ESC 
v C-h u g i t - r e s e t RET C-x o C-x 1 C-v C-v C-v 
C-v C-v k C-x b * s h TAB RET C-r 8 a 9 C-w C-r C-r 
C-r C-r C-x C-f / t m p / L RET C-s C-s C-a ESC v ESC 
v ESC v ESC v C-x b RET ESC p ESC p ESC DEL Q ESC b 
ESC b ESC b ESC b ESC t C-_ ESC f ESC t RET C-x C-f 
/ t m p / Q RET C-v C-v C-x k RET g i t C-a C-k . RET 
g i t SPC a p p l y SPC / t m p / Q RET g i t SPC s 
t a t u s RET C-c C-o g i t SPC c o m m i t SPC - a 
SPC - m ' r e v e r t SPC a SPC f e w SPC p a t c h 
e s SPC b y SPC h n d DEL DEL a n d ' RET g i t SPC 
a p p l y SPC t / DEL DEL / t m p / P RET C-x C-f / 
t m p / P RET C-c g 1 4 6 RET ESC x r e p o r t - e 
m TAB b TAB RET d i f f - C-g C-h k ESC k ESC x r e 
p o r t - e m TAB b TAB RET

Recent messages:
Please wait: formatting the git-reset man page...
git-reset man page formatted
Mark saved where search started [2 times]
call-interactively: Beginning of buffer [4 times]
History item: 1
History item: 2
Undo!
Mark set
Quit
Type C-x 1 to delete the help window.

Tom