diff options
| author | Joakim Verona | 2012-03-26 23:32:56 +0200 |
|---|---|---|
| committer | Joakim Verona | 2012-03-26 23:32:56 +0200 |
| commit | e28095d4fe09534832c171408fc6520b7d25957b (patch) | |
| tree | 142e748041268ca6d4e7780f69b931528195176f /lisp | |
| parent | 75da28a3845b9dfa4e730cfa19c14edc52cbb222 (diff) | |
| parent | f9210e18be29dd83fab9f4e260a29f6e6e5f0c62 (diff) | |
| download | emacs-e28095d4fe09534832c171408fc6520b7d25957b.tar.gz emacs-e28095d4fe09534832c171408fc6520b7d25957b.zip | |
upstream
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 16 | ||||
| -rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 7 | ||||
| -rw-r--r-- | lisp/files.el | 6 | ||||
| -rw-r--r-- | lisp/startup.el | 9 | ||||
| -rw-r--r-- | lisp/vc/vc-git.el | 19 |
5 files changed, 48 insertions, 9 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 5a0c33da3c8..93ae0f12862 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,19 @@ | |||
| 1 | 2012-03-26 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * emacs-lisp/bytecomp.el (byte-compile-constants-vector): Allow more | ||
| 4 | than 197 variables. | ||
| 5 | |||
| 6 | 2012-03-26 Ami Fischman <ami@fischman.org> | ||
| 7 | |||
| 8 | * vc/vc-git.el (vc-git-state): Avoid unnecessarily locking. | ||
| 9 | |||
| 10 | 2012-03-26 Glenn Morris <rgm@gnu.org> | ||
| 11 | |||
| 12 | * files.el (save-buffers-kill-emacs): Doc fix. | ||
| 13 | |||
| 14 | * startup.el (normal-top-level, command-line, command-line-1): | ||
| 15 | Give them doc strings. | ||
| 16 | |||
| 1 | 2012-03-25 Eli Zaretskii <eliz@gnu.org> | 17 | 2012-03-25 Eli Zaretskii <eliz@gnu.org> |
| 2 | 18 | ||
| 3 | * makefile.w32-in (install): Use $(DIRNAME)_same-dir.tst instead | 19 | * makefile.w32-in (install): Use $(DIRNAME)_same-dir.tst instead |
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 2ee878e5213..93c6518d215 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el | |||
| @@ -2694,7 +2694,8 @@ If FORM is a lambda or a macro, byte-compile it as a function." | |||
| 2694 | (limits '(5 ; Use the 1-byte varref codes, | 2694 | (limits '(5 ; Use the 1-byte varref codes, |
| 2695 | 63 ; 1-constlim ; 1-byte byte-constant codes, | 2695 | 63 ; 1-constlim ; 1-byte byte-constant codes, |
| 2696 | 255 ; 2-byte varref codes, | 2696 | 255 ; 2-byte varref codes, |
| 2697 | 65535)) ; 3-byte codes for the rest. | 2697 | 65535 ; 3-byte codes for the rest. |
| 2698 | 65535)) ; twice since we step when we swap. | ||
| 2698 | limit) | 2699 | limit) |
| 2699 | (while (or rest other) | 2700 | (while (or rest other) |
| 2700 | (setq limit (car limits)) | 2701 | (setq limit (car limits)) |
| @@ -2708,8 +2709,8 @@ If FORM is a lambda or a macro, byte-compile it as a function." | |||
| 2708 | (setcdr (car rest) (setq i (1+ i))) | 2709 | (setcdr (car rest) (setq i (1+ i))) |
| 2709 | (setq ret (cons (car rest) ret)))) | 2710 | (setq ret (cons (car rest) ret)))) |
| 2710 | (setq rest (cdr rest))) | 2711 | (setq rest (cdr rest))) |
| 2711 | (setq limits (cdr limits) | 2712 | (setq limits (cdr limits) ;Step |
| 2712 | rest (prog1 other | 2713 | rest (prog1 other ;&Swap. |
| 2713 | (setq other rest)))) | 2714 | (setq other rest)))) |
| 2714 | (apply 'vector (nreverse (mapcar 'car ret))))) | 2715 | (apply 'vector (nreverse (mapcar 'car ret))))) |
| 2715 | 2716 | ||
diff --git a/lisp/files.el b/lisp/files.el index 8c61c288be9..b3fc0766ac5 100644 --- a/lisp/files.el +++ b/lisp/files.el | |||
| @@ -6290,7 +6290,11 @@ be a predicate function such as `yes-or-no-p'." | |||
| 6290 | 6290 | ||
| 6291 | (defun save-buffers-kill-emacs (&optional arg) | 6291 | (defun save-buffers-kill-emacs (&optional arg) |
| 6292 | "Offer to save each buffer, then kill this Emacs process. | 6292 | "Offer to save each buffer, then kill this Emacs process. |
| 6293 | With prefix ARG, silently save all file-visiting buffers, then kill." | 6293 | With prefix ARG, silently save all file-visiting buffers without asking. |
| 6294 | If there are active processes where `process-query-on-exit-flag' | ||
| 6295 | returns non-nil, asks whether processes should be killed. | ||
| 6296 | Runs the members of `kill-emacs-query-functions' in turn and stops | ||
| 6297 | if any returns nil. If `confirm-kill-emacs' is non-nil, calls it." | ||
| 6294 | (interactive "P") | 6298 | (interactive "P") |
| 6295 | (save-some-buffers arg t) | 6299 | (save-some-buffers arg t) |
| 6296 | (and (or (not (memq t (mapcar (function | 6300 | (and (or (not (memq t (mapcar (function |
diff --git a/lisp/startup.el b/lisp/startup.el index 41056f3907e..57d7a74e5ec 100644 --- a/lisp/startup.el +++ b/lisp/startup.el | |||
| @@ -65,6 +65,8 @@ once you are familiar with the contents of the startup screen." | |||
| 65 | 65 | ||
| 66 | (defvar startup-screen-inhibit-startup-screen nil) | 66 | (defvar startup-screen-inhibit-startup-screen nil) |
| 67 | 67 | ||
| 68 | ;; FIXME? Why does this get such weirdly extreme treatment, when the | ||
| 69 | ;; more important inhibit-startup-screen does not. | ||
| 68 | (defcustom inhibit-startup-echo-area-message nil | 70 | (defcustom inhibit-startup-echo-area-message nil |
| 69 | "Non-nil inhibits the initial startup echo area message. | 71 | "Non-nil inhibits the initial startup echo area message. |
| 70 | Setting this variable takes effect | 72 | Setting this variable takes effect |
| @@ -464,6 +466,10 @@ DIRS are relative." | |||
| 464 | (setcdr tail (append (mapcar 'expand-file-name dirs) (cdr tail)))))) | 466 | (setcdr tail (append (mapcar 'expand-file-name dirs) (cdr tail)))))) |
| 465 | 467 | ||
| 466 | (defun normal-top-level () | 468 | (defun normal-top-level () |
| 469 | "Emacs calls this function when it first starts up. | ||
| 470 | It sets `command-line-processed', processes the command-line, | ||
| 471 | reads the initialization files, etc. | ||
| 472 | It is the default value of the variable `top-level'." | ||
| 467 | (if command-line-processed | 473 | (if command-line-processed |
| 468 | (message "Back to top level.") | 474 | (message "Back to top level.") |
| 469 | (setq command-line-processed t) | 475 | (setq command-line-processed t) |
| @@ -701,6 +707,8 @@ opening the first frame (e.g. open a connection to an X server).") | |||
| 701 | (defvar server-process) | 707 | (defvar server-process) |
| 702 | 708 | ||
| 703 | (defun command-line () | 709 | (defun command-line () |
| 710 | "A subroutine of `normal-top-level'. | ||
| 711 | Amongst another things, it parses the command-line arguments." | ||
| 704 | (setq before-init-time (current-time) | 712 | (setq before-init-time (current-time) |
| 705 | after-init-time nil | 713 | after-init-time nil |
| 706 | command-line-default-directory default-directory) | 714 | command-line-default-directory default-directory) |
| @@ -2076,6 +2084,7 @@ A fancy display is used on graphic displays, normal otherwise." | |||
| 2076 | (defalias 'display-splash-screen 'display-startup-screen) | 2084 | (defalias 'display-splash-screen 'display-startup-screen) |
| 2077 | 2085 | ||
| 2078 | (defun command-line-1 (args-left) | 2086 | (defun command-line-1 (args-left) |
| 2087 | "A subroutine of `command-line'." | ||
| 2079 | (display-startup-echo-area-message) | 2088 | (display-startup-echo-area-message) |
| 2080 | (when (and pure-space-overflow | 2089 | (when (and pure-space-overflow |
| 2081 | (not noninteractive)) | 2090 | (not noninteractive)) |
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 3ec32243796..bf7b7fb9e17 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el | |||
| @@ -217,12 +217,21 @@ matching the resulting Git log output, and KEYWORDS is a list of | |||
| 217 | ;; operation. | 217 | ;; operation. |
| 218 | (if (not (vc-git-registered file)) | 218 | (if (not (vc-git-registered file)) |
| 219 | 'unregistered | 219 | 'unregistered |
| 220 | (vc-git--call nil "add" "--refresh" "--" (file-relative-name file)) | ||
| 221 | (let ((diff (vc-git--run-command-string | 220 | (let ((diff (vc-git--run-command-string |
| 222 | file "diff-index" "-z" "HEAD" "--"))) | 221 | file "diff-index" "-p" "--raw" "-z" "HEAD" "--"))) |
| 223 | (if (and diff (string-match ":[0-7]\\{6\\} [0-7]\\{6\\} [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\([ADMUT]\\)\0[^\0]+\0" | 222 | (if (and diff |
| 224 | diff)) | 223 | (string-match ":[0-7]\\{6\\} [0-7]\\{6\\} [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\([ADMUT]\\)\0[^\0]+\0\\(\\(?:.\\|\n\\)*\\)\\'" |
| 225 | (vc-git--state-code (match-string 1 diff)) | 224 | diff)) |
| 225 | (let ((diff-letter (match-string 1 diff)) | ||
| 226 | (diff-contents (match-string 2 diff))) | ||
| 227 | (if (not (string-match "\n." diff-contents)) | ||
| 228 | ;; Empty diff: file contents is the same as the HEAD | ||
| 229 | ;; revision, but timestamps are different (eg, file | ||
| 230 | ;; was "touch"ed). Update timestamp in index: | ||
| 231 | (prog1 'up-to-date | ||
| 232 | (vc-git--call nil "add" "--refresh" "--" | ||
| 233 | (file-relative-name file))) | ||
| 234 | (vc-git--state-code diff-letter))) | ||
| 226 | (if (vc-git--empty-db-p) 'added 'up-to-date))))) | 235 | (if (vc-git--empty-db-p) 'added 'up-to-date))))) |
| 227 | 236 | ||
| 228 | (defun vc-git-working-revision (file) | 237 | (defun vc-git-working-revision (file) |