diff options
| author | Glenn Morris | 2011-04-22 20:07:16 -0700 |
|---|---|---|
| committer | Glenn Morris | 2011-04-22 20:07:16 -0700 |
| commit | 4ffd0d6b569d252e4e807d4e9c9d6a5bd5b08640 (patch) | |
| tree | 26c20c7c4da56fae7e041c9345c76cce1224188c | |
| parent | 81de9236e1daa1fe7dfd0ef9aaaf1e13b6aa74e4 (diff) | |
| parent | be71f8100a71a5b896ef05c32f51a09a3d9e3993 (diff) | |
| download | emacs-4ffd0d6b569d252e4e807d4e9c9d6a5bd5b08640.tar.gz emacs-4ffd0d6b569d252e4e807d4e9c9d6a5bd5b08640.zip | |
Merge from emacs-23; up to 2010-06-09T17:54:28Z!albinus@detlef.
| -rw-r--r-- | doc/emacs/ChangeLog | 5 | ||||
| -rw-r--r-- | doc/emacs/mini.texi | 2 | ||||
| -rw-r--r-- | doc/emacs/screen.texi | 2 | ||||
| -rw-r--r-- | doc/lispref/ChangeLog | 10 | ||||
| -rw-r--r-- | doc/lispref/frames.texi | 21 | ||||
| -rw-r--r-- | doc/lispref/windows.texi | 2 | ||||
| -rw-r--r-- | lisp/ChangeLog | 31 | ||||
| -rw-r--r-- | lisp/ChangeLog.14 | 2 | ||||
| -rw-r--r-- | lisp/buff-menu.el | 2 | ||||
| -rw-r--r-- | lisp/cedet/ChangeLog | 8 | ||||
| -rw-r--r-- | lisp/cedet/ede/pconf.el | 4 | ||||
| -rw-r--r-- | lisp/cedet/ede/proj-comp.el | 4 | ||||
| -rw-r--r-- | lisp/cedet/ede/proj-elisp.el | 8 | ||||
| -rw-r--r-- | lisp/cedet/ede/proj-scheme.el | 2 | ||||
| -rw-r--r-- | lisp/image-mode.el | 14 | ||||
| -rw-r--r-- | lisp/minibuffer.el | 3 | ||||
| -rw-r--r-- | lisp/mouse-drag.el | 2 | ||||
| -rw-r--r-- | lisp/mouse.el | 3 | ||||
| -rw-r--r-- | lisp/play/doctor.el | 12 | ||||
| -rw-r--r-- | lisp/play/mpuz.el | 42 | ||||
| -rw-r--r-- | lisp/textmodes/page.el | 6 | ||||
| -rw-r--r-- | src/ChangeLog | 18 | ||||
| -rw-r--r-- | src/buffer.c | 3 | ||||
| -rw-r--r-- | src/dispextern.h | 2 | ||||
| -rw-r--r-- | src/msdos.c | 2 | ||||
| -rw-r--r-- | src/s/ms-w32.h | 1 | ||||
| -rw-r--r-- | src/sysdep.c | 2 | ||||
| -rw-r--r-- | src/w32.c | 22 | ||||
| -rw-r--r-- | src/xdisp.c | 1 |
29 files changed, 160 insertions, 76 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog index c6405019ddb..37825382788 100644 --- a/doc/emacs/ChangeLog +++ b/doc/emacs/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2011-04-23 Juanma Barranquero <lekktu@gmail.com> | ||
| 2 | |||
| 3 | * mini.texi (Minibuffer Edit): | ||
| 4 | * screen.texi (Mode Line): Fix typo. | ||
| 5 | |||
| 1 | 2011-04-20 Christoph Scholtes <cschol2112@googlemail.com> | 6 | 2011-04-20 Christoph Scholtes <cschol2112@googlemail.com> |
| 2 | 7 | ||
| 3 | * maintaining.texi (Old Revisions): Mention new function vc-ediff. | 8 | * maintaining.texi (Old Revisions): Mention new function vc-ediff. |
diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi index 20086bd5e4a..dcc1c445e68 100644 --- a/doc/emacs/mini.texi +++ b/doc/emacs/mini.texi | |||
| @@ -164,7 +164,7 @@ however: for instance, you cannot split it. @xref{Windows}. | |||
| 164 | @vindex resize-mini-windows | 164 | @vindex resize-mini-windows |
| 165 | Normally, the minibuffer window occupies a single screen line. | 165 | Normally, the minibuffer window occupies a single screen line. |
| 166 | However, if you add two or more lines' worth of text into the | 166 | However, if you add two or more lines' worth of text into the |
| 167 | minibuffer, it expands automatically to accomodate the text. The | 167 | minibuffer, it expands automatically to accommodate the text. The |
| 168 | variable @code{resize-mini-windows} controls the resizing of the | 168 | variable @code{resize-mini-windows} controls the resizing of the |
| 169 | minibuffer. The default value is @code{grow-only}, which means the | 169 | minibuffer. The default value is @code{grow-only}, which means the |
| 170 | behavior we have just described. If the value is @code{t}, the | 170 | behavior we have just described. If the value is @code{t}, the |
diff --git a/doc/emacs/screen.texi b/doc/emacs/screen.texi index 45cbdac4b44..0bc3ce3db8c 100644 --- a/doc/emacs/screen.texi +++ b/doc/emacs/screen.texi | |||
| @@ -259,7 +259,7 @@ the buffer. Minor modes are optional editing modes that provide | |||
| 259 | additional features on top of the major mode. @xref{Minor Modes}. | 259 | additional features on top of the major mode. @xref{Minor Modes}. |
| 260 | 260 | ||
| 261 | Some features are listed together with the minor modes whenever they | 261 | Some features are listed together with the minor modes whenever they |
| 262 | are turned on, even through they are not really minor modes. | 262 | are turned on, even though they are not really minor modes. |
| 263 | @samp{Narrow} means that the buffer being displayed has editing | 263 | @samp{Narrow} means that the buffer being displayed has editing |
| 264 | restricted to only a portion of its text (@pxref{Narrowing}). | 264 | restricted to only a portion of its text (@pxref{Narrowing}). |
| 265 | @samp{Def} means that a keyboard macro is currently being defined | 265 | @samp{Def} means that a keyboard macro is currently being defined |
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 784f62dc4cc..0c0583c06ab 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog | |||
| @@ -1,3 +1,13 @@ | |||
| 1 | 2011-04-23 Juanma Barranquero <lekktu@gmail.com> | ||
| 2 | |||
| 3 | * windows.texi (Choosing Window): Fix typo. | ||
| 4 | |||
| 5 | 2011-04-23 Chong Yidong <cyd@stupidchicken.com> | ||
| 6 | |||
| 7 | * frames.texi (Layout Parameters): Note the difference between | ||
| 8 | querying and setting parameters for left-fringe and right-fringe | ||
| 9 | (Bug#6930). | ||
| 10 | |||
| 1 | 2011-03-21 Stefan Monnier <monnier@iro.umontreal.ca> | 11 | 2011-03-21 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 12 | ||
| 3 | * minibuf.texi (Basic Completion): Be a bit more precise about the | 13 | * minibuf.texi (Basic Completion): Be a bit more precise about the |
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index 92969d8259c..06c120cc09d 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi | |||
| @@ -681,17 +681,20 @@ use the default width. | |||
| 681 | @itemx right-fringe | 681 | @itemx right-fringe |
| 682 | The default width of the left and right fringes of windows in this | 682 | The default width of the left and right fringes of windows in this |
| 683 | frame (@pxref{Fringes}). If either of these is zero, that effectively | 683 | frame (@pxref{Fringes}). If either of these is zero, that effectively |
| 684 | removes the corresponding fringe. A value of @code{nil} stands for | 684 | removes the corresponding fringe. |
| 685 | the standard fringe width, which is the width needed to display the | 685 | |
| 686 | fringe bitmaps. | 686 | When you use @code{frame-parameter} to query the value of either of |
| 687 | these two frame parameters, the return value is always an integer. | ||
| 688 | When using @code{set-frame-parameter}, passing a @code{nil} value | ||
| 689 | imposes an actual default value of 8 pixels. | ||
| 687 | 690 | ||
| 688 | The combined fringe widths must add up to an integral number of | 691 | The combined fringe widths must add up to an integral number of |
| 689 | columns, so the actual default fringe widths for the frame may be | 692 | columns, so the actual default fringe widths for the frame, as |
| 690 | larger than the specified values. The extra width needed to reach an | 693 | reported by @code{frame-parameter}, may be larger than what you |
| 691 | acceptable total is distributed evenly between the left and right | 694 | specify. Any extra width is distributed evenly between the left and |
| 692 | fringe. However, you can force one fringe or the other to a precise | 695 | right fringe. However, you can force one fringe or the other to a |
| 693 | width by specifying that width as a negative integer. If both widths are | 696 | precise width by specifying that width as a negative integer. If both |
| 694 | negative, only the left fringe gets the specified width. | 697 | widths are negative, only the left fringe gets the specified width. |
| 695 | 698 | ||
| 696 | @vindex menu-bar-lines, a frame parameter | 699 | @vindex menu-bar-lines, a frame parameter |
| 697 | @item menu-bar-lines | 700 | @item menu-bar-lines |
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi index 528930c0ff6..9ce00de4abc 100644 --- a/doc/lispref/windows.texi +++ b/doc/lispref/windows.texi | |||
| @@ -1014,7 +1014,7 @@ a window only if the space taken up by that window can accommodate two | |||
| 1014 | windows one above the other that are both at least | 1014 | windows one above the other that are both at least |
| 1015 | @code{window-min-height} lines tall. Moreover, if the window that shall | 1015 | @code{window-min-height} lines tall. Moreover, if the window that shall |
| 1016 | be split has a mode line, @code{split-window-sensibly} does not split | 1016 | be split has a mode line, @code{split-window-sensibly} does not split |
| 1017 | the window unless the new window can accomodate a mode line too. | 1017 | the window unless the new window can accommodate a mode line too. |
| 1018 | @end defopt | 1018 | @end defopt |
| 1019 | 1019 | ||
| 1020 | @defopt split-width-threshold | 1020 | @defopt split-width-threshold |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index f422a977ebe..af58ef47b28 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,34 @@ | |||
| 1 | 2011-04-23 Juanma Barranquero <lekktu@gmail.com> | ||
| 2 | |||
| 3 | * buff-menu.el (Buffer-menu--buffers): Fix typo in docstring (bug#8535). | ||
| 4 | |||
| 5 | * play/mpuz.el (mpuz-silent): Doc fix. | ||
| 6 | (mpuz-mode-map): Use mapc. | ||
| 7 | (mpuz-put-number-on-board): Rename parameter L to COLUMNS. | ||
| 8 | (mpuz-letter-to-digit, mpuz-check-all-solved, mpuz-create-buffer): | ||
| 9 | Fix typos in docstrings. | ||
| 10 | |||
| 11 | * play/doctor.el (doc$, doctor-$, doctor-read-print, doctor-read-token) | ||
| 12 | (doctor-nounp, doctor-pronounp): Fix typos in docstrings. | ||
| 13 | |||
| 14 | * mouse-drag.el (mouse-drag-throw): Fix typo in docstring. | ||
| 15 | |||
| 16 | 2011-04-23 Chong Yidong <cyd@stupidchicken.com> | ||
| 17 | |||
| 18 | * minibuffer.el (completion--do-completion): Avoid the "Next char | ||
| 19 | not unique" prompt if icomplete-mode is enabled (Bug#5849). | ||
| 20 | |||
| 21 | * mouse.el (mouse-drag-mode-line-1): Make sure that if we push | ||
| 22 | mouse-2 into unread-command-events, it is interpreted correctly. | ||
| 23 | |||
| 24 | * image-mode.el (image-type, image-mode-map, image-minor-mode-map) | ||
| 25 | (image-toggle-display): Doc fix. | ||
| 26 | |||
| 27 | 2011-04-23 Stephen Berman <stephen.berman@gmx.net> | ||
| 28 | |||
| 29 | * textmodes/page.el (what-page): Use line-number-at-pos to | ||
| 30 | calculate line number (Bug#6825). | ||
| 31 | |||
| 1 | 2011-04-22 Juanma Barranquero <lekktu@gmail.com> | 32 | 2011-04-22 Juanma Barranquero <lekktu@gmail.com> |
| 2 | 33 | ||
| 3 | * eshell/esh-mode.el (find-tag-interactive): Declare function. | 34 | * eshell/esh-mode.el (find-tag-interactive): Declare function. |
diff --git a/lisp/ChangeLog.14 b/lisp/ChangeLog.14 index 7c32b11ec14..c1313cfd16f 100644 --- a/lisp/ChangeLog.14 +++ b/lisp/ChangeLog.14 | |||
| @@ -4287,7 +4287,7 @@ | |||
| 4287 | (proced-descend): New variable. | 4287 | (proced-descend): New variable. |
| 4288 | (proced-sort): New arg descend. | 4288 | (proced-sort): New arg descend. |
| 4289 | (proced-sort-interactive): Repeated calls toggle sort order. | 4289 | (proced-sort-interactive): Repeated calls toggle sort order. |
| 4290 | (proced-format): Accomodate changes of proced-format-alist. | 4290 | (proced-format): Accommodate changes of proced-format-alist. |
| 4291 | Undefined attributes are displayed as "?". | 4291 | Undefined attributes are displayed as "?". |
| 4292 | (proced-process-attributes): New optional arg pid-list. | 4292 | (proced-process-attributes): New optional arg pid-list. |
| 4293 | Ignore processes with empty attribute list. | 4293 | Ignore processes with empty attribute list. |
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el index 70befa11d8b..9886b30d122 100644 --- a/lisp/buff-menu.el +++ b/lisp/buff-menu.el | |||
| @@ -117,7 +117,7 @@ Auto Revert Mode.") | |||
| 117 | (defvar Buffer-menu--buffers nil | 117 | (defvar Buffer-menu--buffers nil |
| 118 | "If non-nil, list of buffers shown in the current buffer-menu. | 118 | "If non-nil, list of buffers shown in the current buffer-menu. |
| 119 | This variable determines whether reverting the buffer lists only | 119 | This variable determines whether reverting the buffer lists only |
| 120 | this buffers. It affects both manual reverting and reverting by | 120 | these buffers. It affects both manual reverting and reverting by |
| 121 | Auto Revert Mode.") | 121 | Auto Revert Mode.") |
| 122 | (make-variable-buffer-local 'Buffer-menu--buffers) | 122 | (make-variable-buffer-local 'Buffer-menu--buffers) |
| 123 | 123 | ||
diff --git a/lisp/cedet/ChangeLog b/lisp/cedet/ChangeLog index a93806b8876..b5ecfdd242f 100644 --- a/lisp/cedet/ChangeLog +++ b/lisp/cedet/ChangeLog | |||
| @@ -1,3 +1,11 @@ | |||
| 1 | 2011-04-23 Juanma Barranquero <lekktu@gmail.com> | ||
| 2 | |||
| 3 | * ede/pconf.el (ede-proj-tweak-autoconf, ede-proj-flush-autoconf): | ||
| 4 | * ede/proj-comp.el (ede-proj-tweak-autoconf, ede-proj-flush-autoconf): | ||
| 5 | * ede/proj-elisp.el (ede-proj-tweak-autoconf, ede-proj-flush-autoconf) | ||
| 6 | (ede-proj-tweak-autoconf, ede-proj-flush-autoconf): | ||
| 7 | * ede/proj-scheme.el (ede-proj-tweak-autoconf): Fix typos in docstrings. | ||
| 8 | |||
| 1 | 2011-03-07 Chong Yidong <cyd@stupidchicken.com> | 9 | 2011-03-07 Chong Yidong <cyd@stupidchicken.com> |
| 2 | 10 | ||
| 3 | * Version 23.3 released. | 11 | * Version 23.3 released. |
diff --git a/lisp/cedet/ede/pconf.el b/lisp/cedet/ede/pconf.el index 497806c71a3..08fc98728e1 100644 --- a/lisp/cedet/ede/pconf.el +++ b/lisp/cedet/ede/pconf.el | |||
| @@ -159,7 +159,7 @@ don't do it. A value of nil means to just do it.") | |||
| 159 | (ede-proj-configure-synchronize this)) | 159 | (ede-proj-configure-synchronize this)) |
| 160 | 160 | ||
| 161 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target)) | 161 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target)) |
| 162 | "Tweak the configure file (current buffer) to accomodate THIS." | 162 | "Tweak the configure file (current buffer) to accommodate THIS." |
| 163 | ;; Check the compilers belonging to THIS, and call the autoconf | 163 | ;; Check the compilers belonging to THIS, and call the autoconf |
| 164 | ;; setup for those compilers. | 164 | ;; setup for those compilers. |
| 165 | (mapc 'ede-proj-tweak-autoconf (ede-proj-compilers this)) | 165 | (mapc 'ede-proj-tweak-autoconf (ede-proj-compilers this)) |
| @@ -167,7 +167,7 @@ don't do it. A value of nil means to just do it.") | |||
| 167 | ) | 167 | ) |
| 168 | 168 | ||
| 169 | (defmethod ede-proj-flush-autoconf ((this ede-proj-target)) | 169 | (defmethod ede-proj-flush-autoconf ((this ede-proj-target)) |
| 170 | "Flush the configure file (current buffer) to accomodate THIS. | 170 | "Flush the configure file (current buffer) to accommodate THIS. |
| 171 | By flushing, remove any cruft that may be in the file. Subsequent | 171 | By flushing, remove any cruft that may be in the file. Subsequent |
| 172 | calls to `ede-proj-tweak-autoconf' can restore items removed by flush." | 172 | calls to `ede-proj-tweak-autoconf' can restore items removed by flush." |
| 173 | nil) | 173 | nil) |
diff --git a/lisp/cedet/ede/proj-comp.el b/lisp/cedet/ede/proj-comp.el index 418e70fd5e9..401ea15d0d6 100644 --- a/lisp/cedet/ede/proj-comp.el +++ b/lisp/cedet/ede/proj-comp.el | |||
| @@ -236,7 +236,7 @@ This will prevent rules from creating duplicate variables or rules." | |||
| 236 | 236 | ||
| 237 | ;;; Methods: | 237 | ;;; Methods: |
| 238 | (defmethod ede-proj-tweak-autoconf ((this ede-compilation-program)) | 238 | (defmethod ede-proj-tweak-autoconf ((this ede-compilation-program)) |
| 239 | "Tweak the configure file (current buffer) to accomodate THIS." | 239 | "Tweak the configure file (current buffer) to accommodate THIS." |
| 240 | (mapcar | 240 | (mapcar |
| 241 | (lambda (obj) | 241 | (lambda (obj) |
| 242 | (cond ((stringp obj) | 242 | (cond ((stringp obj) |
| @@ -248,7 +248,7 @@ This will prevent rules from creating duplicate variables or rules." | |||
| 248 | (oref this autoconf))) | 248 | (oref this autoconf))) |
| 249 | 249 | ||
| 250 | (defmethod ede-proj-flush-autoconf ((this ede-compilation-program)) | 250 | (defmethod ede-proj-flush-autoconf ((this ede-compilation-program)) |
| 251 | "Flush the configure file (current buffer) to accomodate THIS." | 251 | "Flush the configure file (current buffer) to accommodate THIS." |
| 252 | nil) | 252 | nil) |
| 253 | 253 | ||
| 254 | (defmacro proj-comp-insert-variable-once (varname &rest body) | 254 | (defmacro proj-comp-insert-variable-once (varname &rest body) |
diff --git a/lisp/cedet/ede/proj-elisp.el b/lisp/cedet/ede/proj-elisp.el index 17185b19492..42a20cc4a1a 100644 --- a/lisp/cedet/ede/proj-elisp.el +++ b/lisp/cedet/ede/proj-elisp.el | |||
| @@ -208,7 +208,7 @@ is found, such as a `-version' variable, or the standard header." | |||
| 208 | (error "Don't know how to update load path")))) | 208 | (error "Don't know how to update load path")))) |
| 209 | 209 | ||
| 210 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target-elisp)) | 210 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target-elisp)) |
| 211 | "Tweak the configure file (current buffer) to accomodate THIS." | 211 | "Tweak the configure file (current buffer) to accommodate THIS." |
| 212 | (call-next-method) | 212 | (call-next-method) |
| 213 | ;; Ok, now we have to tweak the autoconf provided `elisp-comp' program. | 213 | ;; Ok, now we have to tweak the autoconf provided `elisp-comp' program. |
| 214 | (let ((ec (ede-expand-filename this "elisp-comp" 'newfile))) | 214 | (let ((ec (ede-expand-filename this "elisp-comp" 'newfile))) |
| @@ -232,7 +232,7 @@ is found, such as a `-version' variable, or the standard header." | |||
| 232 | (save-buffer)) ))) | 232 | (save-buffer)) ))) |
| 233 | 233 | ||
| 234 | (defmethod ede-proj-flush-autoconf ((this ede-proj-target-elisp)) | 234 | (defmethod ede-proj-flush-autoconf ((this ede-proj-target-elisp)) |
| 235 | "Flush the configure file (current buffer) to accomodate THIS." | 235 | "Flush the configure file (current buffer) to accommodate THIS." |
| 236 | ;; Remove crufty old paths from elisp-compile | 236 | ;; Remove crufty old paths from elisp-compile |
| 237 | (let ((ec (ede-expand-filename this "elisp-comp" 'newfile)) | 237 | (let ((ec (ede-expand-filename this "elisp-comp" 'newfile)) |
| 238 | ) | 238 | ) |
| @@ -372,11 +372,11 @@ Argument THIS is the target which needs to insert an info file." | |||
| 372 | ) | 372 | ) |
| 373 | 373 | ||
| 374 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target-elisp-autoloads)) | 374 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target-elisp-autoloads)) |
| 375 | "Tweak the configure file (current buffer) to accomodate THIS." | 375 | "Tweak the configure file (current buffer) to accommodate THIS." |
| 376 | (error "Autoloads not supported in autoconf yet")) | 376 | (error "Autoloads not supported in autoconf yet")) |
| 377 | 377 | ||
| 378 | (defmethod ede-proj-flush-autoconf ((this ede-proj-target-elisp-autoloads)) | 378 | (defmethod ede-proj-flush-autoconf ((this ede-proj-target-elisp-autoloads)) |
| 379 | "Flush the configure file (current buffer) to accomodate THIS." | 379 | "Flush the configure file (current buffer) to accommodate THIS." |
| 380 | nil) | 380 | nil) |
| 381 | 381 | ||
| 382 | (provide 'ede/proj-elisp) | 382 | (provide 'ede/proj-elisp) |
diff --git a/lisp/cedet/ede/proj-scheme.el b/lisp/cedet/ede/proj-scheme.el index 2a3ea039a7a..6a08d4fadd1 100644 --- a/lisp/cedet/ede/proj-scheme.el +++ b/lisp/cedet/ede/proj-scheme.el | |||
| @@ -41,7 +41,7 @@ | |||
| 41 | "This target consists of scheme files.") | 41 | "This target consists of scheme files.") |
| 42 | 42 | ||
| 43 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target-scheme)) | 43 | (defmethod ede-proj-tweak-autoconf ((this ede-proj-target-scheme)) |
| 44 | "Tweak the configure file (current buffer) to accomodate THIS." | 44 | "Tweak the configure file (current buffer) to accommodate THIS." |
| 45 | (autoconf-insert-new-macro "AM_INIT_GUILE_MODULE")) | 45 | (autoconf-insert-new-macro "AM_INIT_GUILE_MODULE")) |
| 46 | 46 | ||
| 47 | (provide 'ede/proj-scheme) | 47 | (provide 'ede/proj-scheme) |
diff --git a/lisp/image-mode.el b/lisp/image-mode.el index c99689f33ad..17f006e81a1 100644 --- a/lisp/image-mode.el +++ b/lisp/image-mode.el | |||
| @@ -296,8 +296,7 @@ This function assumes the current frame has only one window." | |||
| 296 | ;;; Image Mode setup | 296 | ;;; Image Mode setup |
| 297 | 297 | ||
| 298 | (defvar image-type nil | 298 | (defvar image-type nil |
| 299 | "Current image type. | 299 | "The image type for the current Image mode buffer.") |
| 300 | This variable is used to display the current image type in the mode line.") | ||
| 301 | (make-variable-buffer-local 'image-type) | 300 | (make-variable-buffer-local 'image-type) |
| 302 | 301 | ||
| 303 | (defvar image-mode-previous-major-mode nil | 302 | (defvar image-mode-previous-major-mode nil |
| @@ -324,13 +323,13 @@ This variable is used to display the current image type in the mode line.") | |||
| 324 | (define-key map [remap beginning-of-buffer] 'image-bob) | 323 | (define-key map [remap beginning-of-buffer] 'image-bob) |
| 325 | (define-key map [remap end-of-buffer] 'image-eob) | 324 | (define-key map [remap end-of-buffer] 'image-eob) |
| 326 | map) | 325 | map) |
| 327 | "Major mode keymap for viewing images in Image mode.") | 326 | "Mode keymap for `image-mode'.") |
| 328 | 327 | ||
| 329 | (defvar image-minor-mode-map | 328 | (defvar image-minor-mode-map |
| 330 | (let ((map (make-sparse-keymap))) | 329 | (let ((map (make-sparse-keymap))) |
| 331 | (define-key map "\C-c\C-c" 'image-toggle-display) | 330 | (define-key map "\C-c\C-c" 'image-toggle-display) |
| 332 | map) | 331 | map) |
| 333 | "Minor mode keymap for viewing images as text in Image mode.") | 332 | "Mode keymap for `image-minor-mode'.") |
| 334 | 333 | ||
| 335 | (defvar bookmark-make-record-function) | 334 | (defvar bookmark-make-record-function) |
| 336 | 335 | ||
| @@ -520,9 +519,10 @@ was inserted." | |||
| 520 | (message "Repeat this command to go back to displaying the file as text")))) | 519 | (message "Repeat this command to go back to displaying the file as text")))) |
| 521 | 520 | ||
| 522 | (defun image-toggle-display () | 521 | (defun image-toggle-display () |
| 523 | "Start or stop displaying an image file as the actual image. | 522 | "Toggle between image and text display. |
| 524 | This command toggles between `image-mode-as-text' showing the text of | 523 | If the current buffer is displaying an image file as an image, |
| 525 | the image file and `image-mode' showing the image as an image." | 524 | call `image-mode-as-text' to switch to text. Otherwise, display |
| 525 | the image by calling `image-mode'." | ||
| 526 | (interactive) | 526 | (interactive) |
| 527 | (if (image-get-display-property) | 527 | (if (image-get-display-property) |
| 528 | (image-mode-as-text) | 528 | (image-mode-as-text) |
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index e012c324012..4bf06a45238 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el | |||
| @@ -657,7 +657,8 @@ E = after completion we now have an Exact match. | |||
| 657 | (minibuffer-hide-completions)) | 657 | (minibuffer-hide-completions)) |
| 658 | ;; Show the completion table, if requested. | 658 | ;; Show the completion table, if requested. |
| 659 | ((not exact) | 659 | ((not exact) |
| 660 | (if (cond ((null completion-show-inline-help) t) | 660 | (if (cond (icomplete-mode t) |
| 661 | ((null completion-show-inline-help) t) | ||
| 661 | ((eq completion-auto-help 'lazy) | 662 | ((eq completion-auto-help 'lazy) |
| 662 | (eq this-command last-command)) | 663 | (eq this-command last-command)) |
| 663 | (t completion-auto-help)) | 664 | (t completion-auto-help)) |
diff --git a/lisp/mouse-drag.el b/lisp/mouse-drag.el index 1f16b9935c8..fb6c8b7470f 100644 --- a/lisp/mouse-drag.el +++ b/lisp/mouse-drag.el | |||
| @@ -194,7 +194,7 @@ from the original mouse click to the current mouse location. Try it; | |||
| 194 | you'll like it. It's easier to observe than to explain. | 194 | you'll like it. It's easier to observe than to explain. |
| 195 | 195 | ||
| 196 | If the mouse is clicked and released in the same place of time we | 196 | If the mouse is clicked and released in the same place of time we |
| 197 | assume that the user didn't want to scdebugroll but wanted to whatever | 197 | assume that the user didn't want to scroll but wanted to whatever |
| 198 | mouse-2 used to do, so we pass it through. | 198 | mouse-2 used to do, so we pass it through. |
| 199 | 199 | ||
| 200 | Throw scrolling was inspired (but is not identical to) the \"hand\" | 200 | Throw scrolling was inspired (but is not identical to) the \"hand\" |
diff --git a/lisp/mouse.el b/lisp/mouse.el index 87f9be6bf57..124f84d7d73 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el | |||
| @@ -541,6 +541,9 @@ MODE-LINE-P non-nil means dragging a mode line; nil means a header line." | |||
| 541 | ;; a `drag-mouse-1'. In any case `on-link' would have been nulled | 541 | ;; a `drag-mouse-1'. In any case `on-link' would have been nulled |
| 542 | ;; above if there had been any significant mouse movement. | 542 | ;; above if there had been any significant mouse movement. |
| 543 | (when (and on-link (eq 'mouse-1 (car-safe event))) | 543 | (when (and on-link (eq 'mouse-1 (car-safe event))) |
| 544 | ;; If mouse-2 has never been done by the user, it doesn't | ||
| 545 | ;; have the necessary property to be interpreted correctly. | ||
| 546 | (put 'mouse-2 'event-kind 'mouse-click) | ||
| 544 | (push (cons 'mouse-2 (cdr event)) unread-command-events)))))) | 547 | (push (cons 'mouse-2 (cdr event)) unread-command-events)))))) |
| 545 | 548 | ||
| 546 | (defun mouse-drag-mode-line (start-event) | 549 | (defun mouse-drag-mode-line (start-event) |
diff --git a/lisp/play/doctor.el b/lisp/play/doctor.el index 02d24afb278..54a5a4ef6c9 100644 --- a/lisp/play/doctor.el +++ b/lisp/play/doctor.el | |||
| @@ -115,11 +115,11 @@ | |||
| 115 | (defun doc// (x) x) | 115 | (defun doc// (x) x) |
| 116 | 116 | ||
| 117 | (defmacro doc$ (what) | 117 | (defmacro doc$ (what) |
| 118 | "quoted arg form of doctor-$" | 118 | "Quoted arg form of doctor-$." |
| 119 | `(doctor-$ ',what)) | 119 | `(doctor-$ ',what)) |
| 120 | 120 | ||
| 121 | (defun doctor-$ (what) | 121 | (defun doctor-$ (what) |
| 122 | "Return the car of a list, rotating the list each time" | 122 | "Return the car of a list, rotating the list each time." |
| 123 | (let* ((vv (symbol-value what)) | 123 | (let* ((vv (symbol-value what)) |
| 124 | (first (car vv)) | 124 | (first (car vv)) |
| 125 | (ww (append (cdr vv) (list first)))) | 125 | (ww (append (cdr vv) (list first)))) |
| @@ -832,7 +832,7 @@ Otherwise call the Doctor to parse preceding sentence." | |||
| 832 | (newline arg))) | 832 | (newline arg))) |
| 833 | 833 | ||
| 834 | (defun doctor-read-print nil | 834 | (defun doctor-read-print nil |
| 835 | "top level loop" | 835 | "Top level loop." |
| 836 | (interactive) | 836 | (interactive) |
| 837 | (let ((sent (doctor-readin))) | 837 | (let ((sent (doctor-readin))) |
| 838 | (insert "\n") | 838 | (insert "\n") |
| @@ -850,7 +850,7 @@ Otherwise call the Doctor to parse preceding sentence." | |||
| 850 | sentence)) | 850 | sentence)) |
| 851 | 851 | ||
| 852 | (defun doctor-read-token () | 852 | (defun doctor-read-token () |
| 853 | "read one word from buffer" | 853 | "Read one word from buffer." |
| 854 | (prog1 (intern (downcase (buffer-substring (point) | 854 | (prog1 (intern (downcase (buffer-substring (point) |
| 855 | (progn | 855 | (progn |
| 856 | (forward-word 1) | 856 | (forward-word 1) |
| @@ -1020,7 +1020,7 @@ the subject noun, and return the portion of the sentence following it." | |||
| 1020 | nil)))) | 1020 | nil)))) |
| 1021 | 1021 | ||
| 1022 | (defun doctor-nounp (x) | 1022 | (defun doctor-nounp (x) |
| 1023 | "Returns t if the symbol argument is a noun." | 1023 | "Return t if the symbol argument is a noun." |
| 1024 | (or (doctor-pronounp x) | 1024 | (or (doctor-pronounp x) |
| 1025 | (not (or (doctor-verbp x) | 1025 | (not (or (doctor-verbp x) |
| 1026 | (equal x 'not) | 1026 | (equal x 'not) |
| @@ -1028,7 +1028,7 @@ the subject noun, and return the portion of the sentence following it." | |||
| 1028 | (doctor-modifierp x) )) )) | 1028 | (doctor-modifierp x) )) )) |
| 1029 | 1029 | ||
| 1030 | (defun doctor-pronounp (x) | 1030 | (defun doctor-pronounp (x) |
| 1031 | "Returns t if the symbol argument is a pronoun." | 1031 | "Return t if the symbol argument is a pronoun." |
| 1032 | (memq x '( | 1032 | (memq x '( |
| 1033 | i me mine myself | 1033 | i me mine myself |
| 1034 | we us ours ourselves ourself | 1034 | we us ours ourselves ourself |
diff --git a/lisp/play/mpuz.el b/lisp/play/mpuz.el index 5f4ecce31ca..3e1659628f4 100644 --- a/lisp/play/mpuz.el +++ b/lisp/play/mpuz.el | |||
| @@ -39,7 +39,7 @@ | |||
| 39 | 39 | ||
| 40 | (defcustom mpuz-silent 'error | 40 | (defcustom mpuz-silent 'error |
| 41 | "Set this to nil if you want dings on inputs. | 41 | "Set this to nil if you want dings on inputs. |
| 42 | t means never ding, and `error' means only ding on wrong input." | 42 | The value t means never ding, and `error' means only ding on wrong input." |
| 43 | :type '(choice (const :tag "No" nil) | 43 | :type '(choice (const :tag "No" nil) |
| 44 | (const :tag "Yes" t) | 44 | (const :tag "Yes" t) |
| 45 | (const :tag "If correct" error)) | 45 | (const :tag "If correct" error)) |
| @@ -88,33 +88,14 @@ t means never ding, and `error' means only ding on wrong input." | |||
| 88 | 88 | ||
| 89 | (defvar mpuz-mode-map | 89 | (defvar mpuz-mode-map |
| 90 | (let ((map (make-sparse-keymap))) | 90 | (let ((map (make-sparse-keymap))) |
| 91 | (define-key map "a" 'mpuz-try-letter) | 91 | (mapc (lambda (ch) |
| 92 | (define-key map "b" 'mpuz-try-letter) | 92 | (define-key map (char-to-string ch) 'mpuz-try-letter)) |
| 93 | (define-key map "c" 'mpuz-try-letter) | 93 | "abcdefghijABCDEFGHIJ") |
| 94 | (define-key map "d" 'mpuz-try-letter) | ||
| 95 | (define-key map "e" 'mpuz-try-letter) | ||
| 96 | (define-key map "f" 'mpuz-try-letter) | ||
| 97 | (define-key map "g" 'mpuz-try-letter) | ||
| 98 | (define-key map "h" 'mpuz-try-letter) | ||
| 99 | (define-key map "i" 'mpuz-try-letter) | ||
| 100 | (define-key map "j" 'mpuz-try-letter) | ||
| 101 | (define-key map "A" 'mpuz-try-letter) | ||
| 102 | (define-key map "B" 'mpuz-try-letter) | ||
| 103 | (define-key map "C" 'mpuz-try-letter) | ||
| 104 | (define-key map "D" 'mpuz-try-letter) | ||
| 105 | (define-key map "E" 'mpuz-try-letter) | ||
| 106 | (define-key map "F" 'mpuz-try-letter) | ||
| 107 | (define-key map "G" 'mpuz-try-letter) | ||
| 108 | (define-key map "H" 'mpuz-try-letter) | ||
| 109 | (define-key map "I" 'mpuz-try-letter) | ||
| 110 | (define-key map "J" 'mpuz-try-letter) | ||
| 111 | (define-key map "\C-g" 'mpuz-offer-abort) | 94 | (define-key map "\C-g" 'mpuz-offer-abort) |
| 112 | (define-key map "?" 'describe-mode) | 95 | (define-key map "?" 'describe-mode) |
| 113 | map) | 96 | map) |
| 114 | "Local keymap to use in Mult Puzzle.") | 97 | "Local keymap to use in Mult Puzzle.") |
| 115 | 98 | ||
| 116 | |||
| 117 | |||
| 118 | (defun mpuz-mode () | 99 | (defun mpuz-mode () |
| 119 | "Multiplication puzzle mode. | 100 | "Multiplication puzzle mode. |
| 120 | 101 | ||
| @@ -171,7 +152,7 @@ You may abort a game by typing \\<mpuz-mode-map>\\[mpuz-offer-abort]." | |||
| 171 | "A permutation from [0..9] to [0..9].") | 152 | "A permutation from [0..9] to [0..9].") |
| 172 | 153 | ||
| 173 | (defvar mpuz-letter-to-digit (make-vector 10 0) | 154 | (defvar mpuz-letter-to-digit (make-vector 10 0) |
| 174 | "The inverse of mpuz-digit-to-letter.") | 155 | "The inverse of `mpuz-digit-to-letter'.") |
| 175 | 156 | ||
| 176 | (defmacro mpuz-to-digit (letter) | 157 | (defmacro mpuz-to-digit (letter) |
| 177 | (list 'aref 'mpuz-letter-to-digit letter)) | 158 | (list 'aref 'mpuz-letter-to-digit letter)) |
| @@ -198,17 +179,16 @@ You may abort a game by typing \\<mpuz-mode-map>\\[mpuz-offer-abort]." | |||
| 198 | (defvar mpuz-board (make-vector 10 nil) | 179 | (defvar mpuz-board (make-vector 10 nil) |
| 199 | "The board associates to any digit the list of squares where it appears.") | 180 | "The board associates to any digit the list of squares where it appears.") |
| 200 | 181 | ||
| 201 | (defun mpuz-put-number-on-board (number row &rest l) | 182 | (defun mpuz-put-number-on-board (number row &rest columns) |
| 202 | "Put (last digit of) NUMBER on ROW and COLUMNS of the puzzle board." | 183 | "Put (last digit of) NUMBER on ROW and COLUMNS of the puzzle board." |
| 203 | (let (digit) | 184 | (let (digit) |
| 204 | (while l | 185 | (dolist (column columns) |
| 205 | (setq digit (% number 10) | 186 | (setq digit (% number 10) |
| 206 | number (/ number 10)) | 187 | number (/ number 10)) |
| 207 | (aset mpuz-board digit `((,row . ,(car l)) ,@(aref mpuz-board digit))) | 188 | (aset mpuz-board digit `((,row . ,column) ,@(aref mpuz-board digit)))))) |
| 208 | (setq l (cdr l))))) | ||
| 209 | 189 | ||
| 210 | (defun mpuz-check-all-solved (&optional row col) | 190 | (defun mpuz-check-all-solved (&optional row col) |
| 211 | "Check whether all digits have been solved. Return t if yes." | 191 | "Check whether all digits have been solved. Return t if yes." |
| 212 | (catch 'solved | 192 | (catch 'solved |
| 213 | (let (A B1 B2 C D E squares) | 193 | (let (A B1 B2 C D E squares) |
| 214 | (and mpuz-solve-when-trivial | 194 | (and mpuz-solve-when-trivial |
| @@ -294,7 +274,7 @@ You may abort a game by typing \\<mpuz-mode-map>\\[mpuz-offer-abort]." | |||
| 294 | "The general picture of the puzzle screen, as a string.") | 274 | "The general picture of the puzzle screen, as a string.") |
| 295 | 275 | ||
| 296 | (defun mpuz-create-buffer () | 276 | (defun mpuz-create-buffer () |
| 297 | "Create (or recreate) the puzzle buffer. Return it." | 277 | "Create (or recreate) the puzzle buffer. Return it." |
| 298 | (let ((buf (get-buffer-create "*Mult Puzzle*")) | 278 | (let ((buf (get-buffer-create "*Mult Puzzle*")) |
| 299 | (face '(face mpuz-text)) | 279 | (face '(face mpuz-text)) |
| 300 | buffer-read-only) | 280 | buffer-read-only) |
diff --git a/lisp/textmodes/page.el b/lisp/textmodes/page.el index 1de67615252..95ba7ebd86f 100644 --- a/lisp/textmodes/page.el +++ b/lisp/textmodes/page.el | |||
| @@ -156,9 +156,9 @@ thus showing a page other than the one point was originally in." | |||
| 156 | (if (= (match-beginning 0) (match-end 0)) | 156 | (if (= (match-beginning 0) (match-end 0)) |
| 157 | (forward-char 1)) | 157 | (forward-char 1)) |
| 158 | (setq count (1+ count))) | 158 | (setq count (1+ count))) |
| 159 | (message "Page %d, line %d" | 159 | (message "Page %d, line %d" count (line-number-at-pos opoint)))))) |
| 160 | count | 160 | |
| 161 | (1+ (count-lines (point) opoint))))))) | 161 | |
| 162 | 162 | ||
| 163 | ;;; Place `provide' at end of file. | 163 | ;;; Place `provide' at end of file. |
| 164 | (provide 'page) | 164 | (provide 'page) |
diff --git a/src/ChangeLog b/src/ChangeLog index 4a675cc96c6..0067163edbf 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,21 @@ | |||
| 1 | 2011-04-23 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * s/ms-w32.h (localtime): Redirect to sys_localtime. | ||
| 4 | |||
| 5 | * w32.c: Include <time.h>. | ||
| 6 | (sys_localtime): New function. | ||
| 7 | |||
| 8 | 2011-04-23 Chong Yidong <cyd@stupidchicken.com> | ||
| 9 | |||
| 10 | * xdisp.c (init_xdisp): Initialize echo_area_window (Bug#6451). | ||
| 11 | |||
| 12 | * buffer.c (syms_of_buffer): Doc fix (Bug#6902). | ||
| 13 | |||
| 14 | 2011-04-23 Samuel Thibault <sthibault@debian.org> (tiny change) | ||
| 15 | |||
| 16 | * sysdep.c (wait_for_termination): On GNU Hurd, kill returns -1 on | ||
| 17 | zombies (Bug#8467). | ||
| 18 | |||
| 1 | 2011-04-19 Eli Zaretskii <eliz@gnu.org> | 19 | 2011-04-19 Eli Zaretskii <eliz@gnu.org> |
| 2 | 20 | ||
| 3 | * syntax.h (SETUP_SYNTAX_TABLE_FOR_OBJECT): Fix setting of | 21 | * syntax.h (SETUP_SYNTAX_TABLE_FOR_OBJECT): Fix setting of |
diff --git a/src/buffer.c b/src/buffer.c index c649836adb8..46e8ddf1538 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -5551,7 +5551,8 @@ Linefeed indents to this column in Fundamental mode. */); | |||
| 5551 | 5551 | ||
| 5552 | DEFVAR_PER_BUFFER ("tab-width", &BVAR (current_buffer, tab_width), | 5552 | DEFVAR_PER_BUFFER ("tab-width", &BVAR (current_buffer, tab_width), |
| 5553 | make_number (LISP_INT_TAG), | 5553 | make_number (LISP_INT_TAG), |
| 5554 | doc: /* *Distance between tab stops (for display of tab characters), in columns. */); | 5554 | doc: /* *Distance between tab stops (for display of tab characters), in columns. |
| 5555 | This should be an integer greater than zero. */); | ||
| 5555 | 5556 | ||
| 5556 | DEFVAR_PER_BUFFER ("ctl-arrow", &BVAR (current_buffer, ctl_arrow), Qnil, | 5557 | DEFVAR_PER_BUFFER ("ctl-arrow", &BVAR (current_buffer, ctl_arrow), Qnil, |
| 5557 | doc: /* *Non-nil means display control chars with uparrow. | 5558 | doc: /* *Non-nil means display control chars with uparrow. |
diff --git a/src/dispextern.h b/src/dispextern.h index 1f2189adeca..72e23e6642a 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -62,7 +62,7 @@ typedef HDC XImagePtr_or_DC; | |||
| 62 | 62 | ||
| 63 | #ifdef HAVE_NS | 63 | #ifdef HAVE_NS |
| 64 | #include "nsgui.h" | 64 | #include "nsgui.h" |
| 65 | /* following typedef needed to accomodate the MSDOS port, believe it or not */ | 65 | /* Following typedef needed to accommodate the MSDOS port, believe it or not. */ |
| 66 | typedef struct ns_display_info Display_Info; | 66 | typedef struct ns_display_info Display_Info; |
| 67 | typedef Pixmap XImagePtr; | 67 | typedef Pixmap XImagePtr; |
| 68 | typedef XImagePtr XImagePtr_or_DC; | 68 | typedef XImagePtr XImagePtr_or_DC; |
diff --git a/src/msdos.c b/src/msdos.c index e02e64b9ece..6bff56b3f82 100644 --- a/src/msdos.c +++ b/src/msdos.c | |||
| @@ -842,7 +842,7 @@ IT_set_face (int face) | |||
| 842 | 842 | ||
| 843 | /* According to RBIL (INTERRUP.A, V-1000), 160 is the maximum possible | 843 | /* According to RBIL (INTERRUP.A, V-1000), 160 is the maximum possible |
| 844 | width of a DOS display in any known text mode. We multiply by 2 to | 844 | width of a DOS display in any known text mode. We multiply by 2 to |
| 845 | accomodate the screen attribute byte. */ | 845 | accommodate the screen attribute byte. */ |
| 846 | #define MAX_SCREEN_BUF 160*2 | 846 | #define MAX_SCREEN_BUF 160*2 |
| 847 | 847 | ||
| 848 | extern unsigned char *encode_terminal_code (struct glyph *, int, | 848 | extern unsigned char *encode_terminal_code (struct glyph *, int, |
diff --git a/src/s/ms-w32.h b/src/s/ms-w32.h index 8b189baea46..bf6cc66798c 100644 --- a/src/s/ms-w32.h +++ b/src/s/ms-w32.h | |||
| @@ -204,6 +204,7 @@ struct sigaction { | |||
| 204 | #define dup2 sys_dup2 | 204 | #define dup2 sys_dup2 |
| 205 | #define fopen sys_fopen | 205 | #define fopen sys_fopen |
| 206 | #define link sys_link | 206 | #define link sys_link |
| 207 | #define localtime sys_localtime | ||
| 207 | #define mkdir sys_mkdir | 208 | #define mkdir sys_mkdir |
| 208 | #undef mktemp | 209 | #undef mktemp |
| 209 | #define mktemp sys_mktemp | 210 | #define mktemp sys_mktemp |
diff --git a/src/sysdep.c b/src/sysdep.c index 45e80ac0155..4b3a78e154e 100644 --- a/src/sysdep.c +++ b/src/sysdep.c | |||
| @@ -304,7 +304,7 @@ wait_for_termination (int pid) | |||
| 304 | { | 304 | { |
| 305 | while (1) | 305 | while (1) |
| 306 | { | 306 | { |
| 307 | #if defined (BSD_SYSTEM) || defined (HPUX) | 307 | #if (defined (BSD_SYSTEM) || defined (HPUX)) && !defined(__GNU__) |
| 308 | /* Note that kill returns -1 even if the process is just a zombie now. | 308 | /* Note that kill returns -1 even if the process is just a zombie now. |
| 309 | But inevitably a SIGCHLD interrupt should be generated | 309 | But inevitably a SIGCHLD interrupt should be generated |
| 310 | and child_sig will do wait3 and make the process go away. */ | 310 | and child_sig will do wait3 and make the process go away. */ |
| @@ -34,6 +34,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 34 | #include <mbstring.h> /* for _mbspbrk */ | 34 | #include <mbstring.h> /* for _mbspbrk */ |
| 35 | #include <math.h> | 35 | #include <math.h> |
| 36 | #include <setjmp.h> | 36 | #include <setjmp.h> |
| 37 | #include <time.h> | ||
| 37 | 38 | ||
| 38 | /* must include CRT headers *before* config.h */ | 39 | /* must include CRT headers *before* config.h */ |
| 39 | 40 | ||
| @@ -62,6 +63,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 62 | 63 | ||
| 63 | #undef strerror | 64 | #undef strerror |
| 64 | 65 | ||
| 66 | #undef localtime | ||
| 67 | |||
| 65 | #include "lisp.h" | 68 | #include "lisp.h" |
| 66 | 69 | ||
| 67 | #include <pwd.h> | 70 | #include <pwd.h> |
| @@ -1942,6 +1945,12 @@ gettimeofday (struct timeval *tv, struct timezone *tz) | |||
| 1942 | 1945 | ||
| 1943 | tv->tv_sec = tb.time; | 1946 | tv->tv_sec = tb.time; |
| 1944 | tv->tv_usec = tb.millitm * 1000L; | 1947 | tv->tv_usec = tb.millitm * 1000L; |
| 1948 | /* Implementation note: _ftime sometimes doesn't update the dstflag | ||
| 1949 | according to the new timezone when the system timezone is | ||
| 1950 | changed. We could fix that by using GetSystemTime and | ||
| 1951 | GetTimeZoneInformation, but that doesn't seem necessary, since | ||
| 1952 | Emacs always calls gettimeofday with the 2nd argument NULL (see | ||
| 1953 | EMACS_GET_TIME). */ | ||
| 1945 | if (tz) | 1954 | if (tz) |
| 1946 | { | 1955 | { |
| 1947 | tz->tz_minuteswest = tb.timezone; /* minutes west of Greenwich */ | 1956 | tz->tz_minuteswest = tb.timezone; /* minutes west of Greenwich */ |
| @@ -5678,6 +5687,19 @@ sys_write (int fd, const void * buffer, unsigned int count) | |||
| 5678 | return nchars; | 5687 | return nchars; |
| 5679 | } | 5688 | } |
| 5680 | 5689 | ||
| 5690 | /* The Windows CRT functions are "optimized for speed", so they don't | ||
| 5691 | check for timezone and DST changes if they were last called less | ||
| 5692 | than 1 minute ago (see http://support.microsoft.com/kb/821231). So | ||
| 5693 | all Emacs features that repeatedly call time functions (e.g., | ||
| 5694 | display-time) are in real danger of missing timezone and DST | ||
| 5695 | changes. Calling tzset before each localtime call fixes that. */ | ||
| 5696 | struct tm * | ||
| 5697 | sys_localtime (const time_t *t) | ||
| 5698 | { | ||
| 5699 | tzset (); | ||
| 5700 | return localtime (t); | ||
| 5701 | } | ||
| 5702 | |||
| 5681 | static void | 5703 | static void |
| 5682 | check_windows_init_file (void) | 5704 | check_windows_init_file (void) |
| 5683 | { | 5705 | { |
diff --git a/src/xdisp.c b/src/xdisp.c index 574c84fc086..19fef35fce8 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -26997,6 +26997,7 @@ init_xdisp (void) | |||
| 26997 | 26997 | ||
| 26998 | mini_w = XWINDOW (minibuf_window); | 26998 | mini_w = XWINDOW (minibuf_window); |
| 26999 | root_window = FRAME_ROOT_WINDOW (XFRAME (WINDOW_FRAME (mini_w))); | 26999 | root_window = FRAME_ROOT_WINDOW (XFRAME (WINDOW_FRAME (mini_w))); |
| 27000 | echo_area_window = minibuf_window; | ||
| 27000 | 27001 | ||
| 27001 | if (!noninteractive) | 27002 | if (!noninteractive) |
| 27002 | { | 27003 | { |