1. 19 Jan, 2013 4 commits
    • Eli Zaretskii's avatar
      Make 'fstat' on MS-Windows behave more like 'stat' and 'lstat'. · 76e9f7b9
      Eli Zaretskii authored
       src/w32.c (fstat): Return owner and group like 'stat' and 'lstat' do.
    • Eli Zaretskii's avatar
      Minor fix in acl_set_file. · 6a9465f3
      Eli Zaretskii authored
       src/w32.c (acl_set_file): Treat ERROR_ACCESS_DENIED from
       set_file_security as failure due to insufficient privileges.
       Reported by Fabrice Popineau <fabrice.popineau@supelec.fr>.
    • Paul Eggert's avatar
      Work around bug in CIFS and vboxsf file systems. · 9fe43ff6
      Paul Eggert authored
      The bug was observed on Ubuntu operating inside a virtual machine,
      editing files mounted via CIFS or vboxsf from the MS Windows 7 host.
      The workaround introduces a race condition on non-buggy hosts,
      but it's an unlikely race and anyway there's a nearly identical
      nearby race that can't be fixed.
      * fileio.c (valid_timestamp_file_system, timestamp_file_system):
      New static vars.
      (Fwrite_region): Test for file system time stamp bug.
      (init_fileio): New function.
      * lisp.h (init_fileio): Declare it.
      * emacs.c (main): Call it.
      Fixes: debbugs:13149
    • Paul Eggert's avatar
      * fileio.c (Finsert_file_contents): Simplify new diagnostic · fa705c99
      Paul Eggert authored
      and make it more consistent with other stat-failure diagnostics.
  2. 18 Jan, 2013 2 commits
  3. 17 Jan, 2013 2 commits
    • Dmitry Antipov's avatar
      * lisp.h (toplevel): Add comment about using Lisp_Save_Value · 468afbac
      Dmitry Antipov authored
      objects, related functions and macros.
      (make_save_value): Adjust prototype.
      (make_save_pointer): New prototype.
      (SAFE_NALLOCA): Fix indentation.  Use make_save_pointer.
      (SAFE_ALLOCA_LISP): Adjust make_save_value usage.
      * alloc.c (format_save_value): Rename to make_save_value.
      (make_save_pointer): New function.
      (record_xmalloc): Use make_save_pointer.
      * dired.c, editfns.c, fileio.c, font.c, gtkutil.c, lread.c:
      * nsmenu.m, nsterm.m, xfns.c, xmenu.c, xselect.c, keymap.c:
      Change users of make_save_value to make_save_pointer.
      Likewise for format_save_value and make_save_value.
    • Dmitry Antipov's avatar
      * buffer.h (NARROWED, BUF_NARROWED): Drop unused macros. · 0e70695a
      Dmitry Antipov authored
      * buffer.c (toplevel, syms_of_buffer): Drop old commented-out
      debugging stubs.
  4. 15 Jan, 2013 4 commits
    • Paul Eggert's avatar
      * src/alloc.c (free_save_value): Now static. · 963ea40f
      Paul Eggert authored
    • Dmitry Antipov's avatar
      * keymap.c (map_keymap_internal): Use format_save_value. · 3346c1d0
      Dmitry Antipov authored
      (map_keymap_char_table_item): Adjust accordingly.
      * fileio.c (non_regular_fd, non_regular_inserted)
      (non_regular_nbytes): Remove.
      (Finsert_file_contents): Convert trytry to ptrdiff_t.  Use
      format_save_value to pass parameters to read_non_regular.
      (read_non_regular): Use XSAVE_ macros to extract parameters.
      Adjust comment.
      * xmenu.c (xmenu_show) [!USE_X_TOOLKIT && !USE_GTK]: Use
      (pop_down_menu) [!USE_X_TOOLKIT && !USE_GTK]: Adjust user.
    • Dmitry Antipov's avatar
      * src/lisp.h (XSAVE_POINTER, XSAVE_INTEGER): Change to allow extraction · 2b30549c
      Dmitry Antipov authored
      from any Lisp_Save_Value slot.  Add type checking.
      * src/alloc.c, src/dired.c, src/editfns.c, src/fileio.c, src/ftfont.c:
      * src/gtkutil.c, src/keymap.c, src/lread.c, src/nsterm.h, src/nsmenu.c:
      * src/xfns.c, src/xmenu.c, src/xselect.c: All users changed.
      * admin/coccinelle/xsave.cocci: Semantic patch to adjust users of
    • Dmitry Antipov's avatar
      Some convenient bits to deal with Lisp_Save_Values. · 1b971ac1
      Dmitry Antipov authored
      * lisp.h (XSAVE_OBJECT): New macro to extract saved objects.
      (allocate_misc): Remove prototype.
      (format_save_value): New prototype.
      * alloc.c (allocate_misc): Revert back to static.
      (format_save_value): New function to build Lisp_Save_Value
      object with the specified internal structure.
      (make_save_value): Reimplement using format_save_value.
      * editfns.c (save_excursion_save): Use format_save_value.
      (save_excursion_restore): Use XSAVE_OBJECT.
  5. 14 Jan, 2013 4 commits
    • Paul Eggert's avatar
      Avoid needless casts with XSAVE_POINTER. · c50cf2ea
      Paul Eggert authored
      * alloc.c (mark_object) [GC_MARK_STACK]:
      * dired.c (directory_files_internal_unwind):
      * fileio.c (do_auto_save_unwind):
      * gtkutil.c (pop_down_dialog):
      * keymap.c (map_keymap_char_table_item):
      * lread.c (load_unwind):
      * nsmenu.m (pop_down_menu):
      * print.c (print_object) [GC_MARK_STACK]:
      * xfns.c (clean_up_file_dialog):
      * xmenu.c (cleanup_widget_value_tree):
      Omit casts between XSAVE_POINTER and a pointer type.
    • Dmitry Antipov's avatar
      * lisp.h (toplevel): Fix typo in comment. · b17b4d0f
      Dmitry Antipov authored
    • Dmitry Antipov's avatar
      Fix compilation with GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE. · 9d5a1260
      Dmitry Antipov authored
      * eval.c (eval_sub): Protect `form' from being GCed before its
      car and cdr becomes protected with the backtrace entry.
    • Dmitry Antipov's avatar
      Make Lisp_Save_Value more versatile storage for up to four objects. · 73ebd38f
      Dmitry Antipov authored
      * lisp.h (toplevel): Enumeration to describe types of saved objects.
      (struct Lisp_Save_Value): New layout.  Adjust comments.
      (XSAVE_POINTER): New macro.
      (XSAVE_INTEGER): Likewise.
      (allocate_misc): Add prototype.
      (free_misc): Likewise.
      * alloc.c (allocate_misc): Now global.
      (free_misc): Likewise.  Adjust comment.
      (make_save_value): Use new Lisp_Save_Value layout.  Adjust comment.
      (free_save_value): Likewise.
      (mark_object): Likewise.
      * editfns.c (save_excursion_save): Pack everything within
      Lisp_Save_Value and so avoid xmalloc.
      (save_excursion_restore): Adjust to match new layout.  Use free_misc
      because we do not allocate extra memory any more.  Add eassert.
      * print.c (print_object): New code to print Lisp_Save_Value.  Do not
      rely on valid_lisp_object_p if !GC_MARK_STACK.  Adjust comments.
      * dired.c, fileio.c, font.c, ftfont.c, gtkutil.c, keymap.c,
      * lread.c, nsmenu.m, nsterm.h, xfns.c, xmenu.c, xselect.c:
      Use XSAVE_POINTER and XSAVE_INTEGER where appropriate.
  6. 13 Jan, 2013 3 commits
  7. 12 Jan, 2013 1 commit
  8. 11 Jan, 2013 3 commits
  9. 13 Jan, 2013 2 commits
  10. 12 Jan, 2013 4 commits
  11. 11 Jan, 2013 6 commits
    • Aaron S. Hawley's avatar
      Disambiguate function and variable references in docstrings. · 9fc9a531
      Aaron S. Hawley authored
      * lisp/comint.el (comint-history-isearch-message): Fix ambiguous doc
       string cross-reference(s).
      * lisp/ffap.el (ffap-string-at-point-region, ffap-next)
      (ffap-string-at-point, ffap-string-around)
      (ffap-copy-string-as-kill, ffap-highlight-overlay)
      (ffap-literally): Fix ambiguous doc string cross-reference(s).
      * lisp/font-lock.el (font-lock-keywords-alist)
      (font-lock-removed-keywords-alist): Fix ambiguous doc string
      * lisp/help-mode.el (help-xref-symbol-regexp): Add "call" as a hint for
      a cross-reference to a function.
      * lisp/info.el (Info-find-emacs-command-nodes): Fix ambiguous doc
       string cross-reference(s).
      * lisp/isearch.el (isearch-message-function, isearch-fail-pos): Fix
       ambiguous doc string cross-reference(s).
      * lisp/misearch.el (multi-isearch-next-buffer-function): Fix ambiguous
       doc string cross-reference(s).
      * lisp/newcomment.el (comment-box): Fix ambiguous doc string
      * lisp/printing.el (pr-txt-printer-alist, pr-ps-printer-alist)
      (pr-setting-database): Fix ambiguous doc string
      * lisp/ps-print.el (ps-even-or-odd-pages, ps-spool-buffer-with-faces)
      (ps-n-up-filling-database): Fix ambiguous doc string
      * lisp/server.el (server-buffer, server-log): Fix ambiguous doc string
      * lisp/simple.el (newline, delete-backward-char, delete-forward-char)
      (minibuffer-history-isearch-message, kill-line, track-eol)
      (temporary-goal-column): Fix ambiguous doc string
      * lisp/whitespace.el (whitespace-point)
      (whitespace-font-lock-refontify, whitespace-bob-marker)
      (whitespace-eob-marker): Fix ambiguous doc string
      * lisp/calc/calc.el (calc-highlight-selections-with-faces)
       (calc-dispatch): Fix ambiguous doc string cross-reference(s).
      * lisp/emacs-lisp/edebug.el (edebug-read, edebug-eval-defun): Fix
       ambiguous doc string cross-reference(s).
      * lisp/gnus/gnus-start.el (gnus-check-new-newsgroups): Fix ambiguous doc string
      * lisp/gnus/gnus-sum.el (gnus-summary-newsgroup-prefix): Fix ambiguous doc string
      * lisp/international/mule.el (add-to-coding-system-list): Fix ambiguous
       doc string cross-reference(s).
      * lisp/progmodes/cc-fonts.el (c-font-lock-keywords-3)
      (c++-font-lock-keywords-3, objc-font-lock-keywords-3)
      (java-font-lock-keywords-3, idl-font-lock-keywords-3)
      (pike-font-lock-keywords-3): Fix ambiguous doc string
      * lisp/progmodes/compile.el (compile): Fix ambiguous doc string
      * lisp/progmodes/etags.el (tags-table-files)
      (tags-table-files-function, tags-included-tables-function): Fix
       ambiguous doc string cross-reference(s).
      * lisp/progmodes/gdb-mi.el (gdb, gdb-setup-windows)
      (gdb-restore-windows): Fix ambiguous doc string
      * lisp/textmodes/flyspell.el (flyspell-mark-duplications-flag)
      (flyspell-default-deplacement-commands): Fix ambiguous doc string
      * lisp/textmodes/ispell.el (ispell-accept-output): Fix ambiguous doc
       string cross-reference(s).
      * lisp/textmodes/sgml-mode.el (html-tag-help): Fix ambiguous doc string
      * lisp/vc/compare-w.el (compare-ignore-whitespace)
      (compare-ignore-case, compare-windows-dehighlight): Fix ambiguous
       doc string cross-reference(s).
      * lisp/vc/diff.el (diff): Fix ambiguous doc string cross-reference(s).
      * src/insdel.c (Fcombine_after_change_execute, syms_of_insdel): Fix
       ambiguous doc string cross-reference(s).
      * src/keyboard.c (Fcommand_execute, syms_of_keyboard): Fix ambiguous
       doc string cross-reference(s).
      * src/window.c (Fwindow_point, syms_of_window): Fix ambiguous doc
       string cross-reference(s).
      Fixes: debbugs:12686
    • Dmitry Antipov's avatar
      Avoid unnecessary byte position calculation for the gap movement. · 6020559a
      Dmitry Antipov authored
      Since all users of move_gap do CHAR_TO_BYTE for other purposes
      anyway, all of them should use move_gap_both instead.
      * lisp.h (move_gap): Remove prototype.
      * insdel.c (move_gap): Remove.
      (move_gap_both): Add eassert.
      * editfns.c (Ftranspose_regions): Tweak to use move_gap_both.
      * xml.c (parse_region): Likewise.
    • Paul Eggert's avatar
      emacsclient -t should not suspend Emacs server · b8956427
      Paul Eggert authored
      * lisp.h, sysdep.c (block_tty_out_signal, unblock_tty_out_signal):
      New functions.
      * term.c (init_tty): Use them instead of rolling our own code.
      * sysdep.c (tcsetpgrp_without_stopping): Likewise.  Here, this
      switches from 'signal' to 'pthread_sigmask', which is safer in
      multithreaded applications.
      * term.c (Fresume_tty): Don't bother dissociating if O_IGNORE_CTTY,
      which has already arranged for that.
      (dissociate_if_controlling_tty): If setsid fails, fall back on TIOCNOTTY.
      This is the main part of the bug fix.
      Fixes: debbugs:13387
    • Jan Djärv's avatar
      * gtkutil.c (xg_initialize): Backport from trunk. · 38693137
      Jan Djärv authored
      Add ifdef HAVE_FREETYPE around x_last_font_name.
      Fixes: debbugs:13403
    • Paul Eggert's avatar
      Backport typo fix from trunk, for AIX. · 45b7bfdd
      Paul Eggert authored
      * eval.c (mark_backtrace) [BYTE_MARK_STACK]: Remove stray '*'.
      This follows up on the 2012-09-29 patch that removed indirection
      for the 'function' field.  Reported by Sergey Vinokurov in
      Fixes: debbugs:13408
    • Paul Eggert's avatar
      Fix SIGDANGER handlers, for AIX. · b6f960a0
      Paul Eggert authored
      * sysdep.c.c (handle_danger_signal, deliver_danger_signal) [SIGDANGER]:
      Move handlers here from emacs.c; they were out of place.
      Fixes: debbugs:13408
  12. 10 Jan, 2013 2 commits
    • Jan Djärv's avatar
      * gtkutil.c (xg_initialize): Add ifdef HAVE_FREETYPE around · 48660ca5
      Jan Djärv authored
      Fixes: debbugs:13403
    • Dmitry Antipov's avatar
      Omit buffer_slot_type_mismatch and use generic predicates to enforce · 58cc0a01
      Dmitry Antipov authored
      the type of per-buffer values where appropriate.
      * src/lisp.h (struct Lisp_Buffer_Objfwd): Rename slottype member to
      predicate, which is how it's really used now.  Adjust comment.
      * src/buffer.h (buffer_slot_type_mismatch): Remove prototype.
      * src/buffer.c (buffer_slot_type_mismatch): Remove.
      (DEFVAR_PER_BUFFER, defvar_per_buffer): Rename type argument to
      predicate.  Adjust comment.
      (syms_of_buffer): Use Qsymbolp for major-mode.  Use Qintegerp for
      fill-column, left-margin, tab-width, buffer-saved-size,
      left-margin-width, right-margin-width, left-fringe-width,
      right-fringe-width, scroll-bar-width and buffer-display-count.
      Use Qstringp for default-directory, buffer-file-name,
      buffer-file-truename and buffer-auto-save-file-name.  Use Qfloatp for
      scroll-up-aggressively and scroll-down-aggressively.  Use Qnumberp for
      * src/data.c (store_symval_forwarding): Adjust to call the predicate.
      * lisp/cus-start.el (toplevel): Only allow float values for
      scroll-up-aggressively and scroll-down-aggressively.
      Allow any number for line-spacing.
  13. 09 Jan, 2013 3 commits