The attached patch makes `switch-to-buffer(-other-(window|frame))' with a prefix arg act analogously to `find-alternate-file': the buffer current before the switch is killed. In GNU Emacs 24.3.50.2 (i686-pc-mingw32) of 2013-11-28 on LEG570 Bzr revision: 115271 rgm@gnu.org-20131128203155-qjc1xsp19z2k64b2 Windowing system distributor `Microsoft Corp.', version 6.1.7601 Configured using: `configure --enable-checking 'CFLAGS=-O0 -g3' CPPFLAGS=-DGLYPH_DEBUG=1'