[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ediff behavior with ediff-setup-windows-plain

From: Klaus Zeitler
Subject: ediff behavior with ediff-setup-windows-plain
Date: Tue, 23 Jul 2002 14:27:07 +0200 (MEST)

This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

Your bug report will be posted to the address@hidden mailing list,
and to the gnu.emacs.bug news group.

In GNU Emacs 21.2.2 (sparc-sun-solaris2.7, Motif Version 2.1.0)
 of 2002-04-25 on sfsw54
configured using `configure  --with-gcc 
--with-x-toolkit=motif --x-includes=/usr/openwin/include:/usr/local/gnu/include 
--x-libraries=/usr/openwin/lib:/usr/local/gnu/lib --with-pop'
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: C
  locale-coding-system: nil
  default-enable-multibyte-characters: t

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

in emacs 20.7 I've used the following sequence to start ediff in a new frame
but with all diff buffers in one frame (maybe one should do that differently
but at least it worked):

(add-hook 'ediff-mode-hook (lambda () (select-frame (make-frame))))
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
(add-hook 'ediff-startup-hook 'ediff-toggle-wide-display)

this doesn't work properly anymore in emacs 21.2.
emacs now displays the diffs in both frames and jumps back and forth between
those 2 frames.
I debugged a bit and I think it's caused by the function
ediff-skip-unsuitable-frames that seems to be rewritten in version 21.
When I change this function back to the old one from 20.7 emacs
behaves normally (the way I expect it), i.e. opens a new frame with 3 windows
and the other frame doesn't change.

Here's the call stack for ediff-files upto what I think is the culprit:

* ediff-skip-unsuitable-frames()
  ediff-destroy-control-frame(#<buffer *Ediff Control Panel*>)
  ediff-setup-windows-plain-compare(#<buffer c1> #<buffer c2> nil #<buffer 
*Ediff Control Panel*>)
  ediff-setup-windows-plain(#<buffer c1> #<buffer c2> nil #<buffer *Ediff 
Control Panel*>)
  ediff-setup-windows(#<buffer c1> #<buffer c2> nil #<buffer *Ediff Control 
  ediff-setup(#<buffer c1> "/home/kzeitler/tst/c1" #<buffer c2> 
"/home/kzeitler/tst/c2" nil nil nil ((ediff-job-name . ediff-files)) nil)
  ediff-files-internal("/home/kzeitler/tst/c1" "/home/kzeitler/tst/c2" nil nil 
  ediff-files("/home/kzeitler/tst/c1" "/home/kzeitler/tst/c2")

Recent input:
<down-mouse-1> <mouse-1> <down-mouse-2> <mouse-2> <up> 
<up> <left> C-j <down> <down> <left> C-j <down> <down> 
<left> C-j <escape> x e d i f f - f i l e s <return> 
C-a C-k ~ / t s t / c 1 <return> <up> <backspace> 2 
<return> <switch-frame> <help-echo> <down-mouse-1> 
<mouse-1> n <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> <down-mouse-1> <mouse-1> q y <help-echo> 
<help-echo> <help-echo> <help-echo> <switch-frame> 
<down-mouse-1> <mouse-movement> <mouse-1> C-x 5 0 C-a 
C-x k <return> C-x k <return> <help-echo> <help-echo> 
<menu-bar> <help-menu> <report-emacs-bug>

Recent messages:
Reading file /home/kzeitler/tst/c1 ... 
Reading file /home/kzeitler/tst/c2 ... 
Computing differences between c1 and c2 ...

Buffer A: Processing difference region 0 of 1
Buffer B: Processing difference region 0 of 1
Processing difference regions ... done
Refining difference region 1 ...
 [4 times]
Loading emacsbug...done

reply via email to

[Prev in Thread] Current Thread [Next in Thread]