1. 06 Dec, 2018 3 commits
    • Michael Albinus's avatar
      Rework Tramp wrt string-match-p, looking-at-p, save-match-data · 66b49fc1
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-find-method, tramp-find-user)
      (tramp-find-host, tramp-dissect-file-name, tramp-make-tramp-file-name)
      (tramp-completion-make-tramp-file-name, tramp-debug-message)
      (tramp-message, tramp-progress-reporter-update)
      (tramp-set-completion-function)
      (tramp-rfn-eshadow-update-overlay)
      (tramp-find-file-name-coding-system-alist)
      (tramp-file-name-for-operation)
      (tramp-use-absolute-autoload-file-names)
      (tramp-get-completion-methods, tramp-get-completion-user-host)
      (tramp-handle-directory-files)
      (tramp-handle-file-name-case-insensitive-p)
      (tramp-handle-file-name-completion, tramp-handle-file-truename)
      (tramp-handle-insert-directory, tramp-handle-load)
      (tramp-handle-shell-command, tramp-action-yesno)
      (tramp-action-yn, tramp-process-actions)
      (tramp-mode-string-to-int, tramp-get-local-locale)
      (tramp-local-host-p):
      * lisp/net/tramp-adb.el (tramp-adb-handle-file-system-info)
      (tramp-adb-handle-directory-files-and-attributes)
      (tramp-adb--gnu-switches-to-ash, tramp-adb-sh-fix-ls-output)
      (tramp-adb-handle-file-name-all-completions)
      (tramp-adb-handle-shell-command)
      (tramp-adb-handle-start-file-process):
      * lisp/net/tramp-archive.el (tramp-archive-dissect-file-name):
      * lisp/net/tramp-cache.el (tramp-get-hash-table)
      (tramp-flush-directory-properties, tramp-flush-file-function):
      * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable)
      (tramp-append-tramp-buffers):
      * lisp/net/tramp-compat.el (tramp-compat-process-running-p):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name)
      (tramp-gvfs-get-file-attributes)
      (tramp-gvfs-handle-file-attributes)
      (tramp-gvfs-monitor-process-filter)
      (tramp-gvfs-handler-mounted-unmounted)
      (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec-entry)
      (tramp-gvfs-mount-spec, tramp-gvfs-maybe-open-connection):
      * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls)
      (tramp-do-file-attributes-with-stat)
      (tramp-sh-handle-file-selinux-context)
      (tramp-sh-handle-directory-files-and-attributes)
      (tramp-do-directory-files-and-attributes-with-stat)
      (tramp-sh-handle-file-name-all-completions)
      (tramp-sh-handle-dired-compress-file)
      (tramp-sh-handle-insert-directory)
      (tramp-sh-handle-expand-file-name)
      (tramp-sh-handle-start-file-process)
      (tramp-sh-handle-process-file, tramp-sh-handle-write-region)
      (tramp-sh-handle-file-notify-add-watch)
      (tramp-sh-gio-monitor-process-filter)
      (tramp-sh-gvfs-monitor-dir-process-filter)
      (tramp-sh-inotifywait-process-filter)
      (tramp-sh-handle-file-system-info, tramp-maybe-send-script)
      (tramp-find-executable, tramp-open-shell, tramp-find-shell)
      (tramp-open-connection-setup-interactive-shell)
      (tramp-find-inline-encoding, tramp-call-local-coding-command)
      (tramp-compute-multi-hops, tramp-maybe-open-connection)
      (tramp-convert-file-attributes)
      (tramp-make-copy-program-file-name, tramp-get-remote-locale)
      (tramp-get-test-nt-command, tramp-get-remote-stat)
      (tramp-get-inline-coding):
      * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files)
      (tramp-smb-action-get-acl, tramp-smb-handle-file-attributes)
      (tramp-smb-handle-file-name-all-completions)
      (tramp-smb-handle-file-system-info)
      (tramp-smb-handle-file-writable-p)
      (tramp-smb-handle-insert-directory)
      (tramp-smb-handle-make-directory)
      (tramp-smb-handle-make-directory-internal)
      (tramp-smb-handle-start-file-process, tramp-smb-get-localname)
      (tramp-smb-read-file-entry): Use `string-match-p' and
      `looking-at-p'.  Remove superfluous `save-match-data'.  Apply
      `eval-when-compile' on constant concat data.
      
      * lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p-p):
      Use `string-prefix-p'.
      (tramp-compat-file-name-unquote): Do not use match data.
      66b49fc1
    • Michael Albinus's avatar
      Make stronger tests for Tramp multi hops · 8f3fde38
      Michael Albinus authored
      * lisp/net/tramp.el (tramp-dissect-file-name, tramp-dissect-hop-name):
      Check, that method is capable of multi hops.
      
      * test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
      (tramp-test02-file-name-dissect-simplified)
      (tramp-test02-file-name-dissect-separate): Suppress check for multihops.
      (tramp-test03-file-name-method-rules): Check for error if multi
      hops cannot be applied.
      8f3fde38
    • João Távora's avatar
      Keep Flymake compatible with Emacs 26.1 builds --without-x · 8e8b8115
      João Távora authored
      * lisp/progmodes/flymake.el (flymake-double-exclamation-mark):
      Don't define if 'define-fringe-bitmap isn't fbound.
      (Version): Bump to 1.0.2
      8e8b8115
  2. 05 Dec, 2018 1 commit
  3. 04 Dec, 2018 9 commits
  4. 03 Dec, 2018 6 commits
    • Paul Eggert's avatar
      emacsclient: fix typo on recent socket-leak change · bc6ffabe
      Paul Eggert authored
      This ports to POSIXish platforms like macOS that lack SOCK_CLOEXEC.
      Fix suggested by Eli Zaretskii in:
      https://lists.gnu.org/r/emacs-devel/2018-12/msg00055.html
      * lib-src/emacsclient.c (set_local_socket):
      Don’t use SOCK_CLOEXEC; that’s cloexec_socket’s job.
      bc6ffabe
    • Eli Zaretskii's avatar
      Fix WINDOWSNT/DOS_NT build · 2ff9dca1
      Eli Zaretskii authored
      Recent changes in sysdep.c and emacsclient unnecessarily
      removed useful code from DOS_NT builds.  This changeset
      reinstates that code.
      * nt/inc/ms-w32.h (tcdrain): Redirect to _commit.
      (fdatasync): No need to redirect anymore.
      
      * lib-src/emacsclient.c (flush_stdout): Don't avoid calling
      tcdrain on DOS_NT platforms.
      
      * src/sysdep.c (reset_sys_modes): Don't ifdef away the call to
      tcdrain on DOS_NT platforms.
      2ff9dca1
    • Paul Eggert's avatar
      emacsclient: don’t leak socket to child processes · 5c412405
      Paul Eggert authored
      * lib-src/emacsclient.c [!WINDOWSNT]: Include fcntl.h.
      (cloexec_socket): New function.
      (set_tcp_socket, set_local_socket): Use it.
      5c412405
    • Paul Eggert's avatar
      Use tcdrain, not fdatasync, to drain ttys · f5090b91
      Paul Eggert authored
      fdatasync is for storage devices, not ttys.
      * admin/merge-gnulib (GNULIB_MODULES): Remove fdatasync.
      * lib/fdatasync.c, m4/fdatasync.m4: Remove.
      * lib-src/Makefile.in (LIB_FDATASYNC):
      * src/Makefile.in (LIB_FDATASYNC):
      Remove.  All uses removed.
      * lib-src/emacsclient.c [!DOS_NT]:
      Include <termios.h>, for tcdrain.
      * lib-src/emacsclient.c (flush_stdout):
      * src/sysdep.c (reset_sys_modes): On ttys, use tcdrain instead
      of fdatasync (except don’t use either function if DOS_NT).
      * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
      f5090b91
    • Paul Eggert's avatar
      Update from Gnulib · 25a33aa2
      Paul Eggert authored
      This incorporates:
      2018-11-30 memrchr: port better to clang
      2018-11-21 mktime: add libc-config dependency
      * build-aux/config.guess, build-aux/config.sub, lib/memrchr.c:
      Copy from Gnulib.
      * m4/gnulib-comp.m4: Regenerate.
      25a33aa2
    • Paul Eggert's avatar
      emacsclient: fix symlink/socket race · 3e5d7755
      Paul Eggert authored
      * lib-src/emacsclient.c (socket_status): New arg UID.
      All uses changed.
      (set_local_socket): Don’t create the unbound socket unless the
      initial sanity checks on the socket file succeed; this
      simplifies cleaning it up.  Check socket ownership again
      after connecting, to fix a race (Bug#33366).
      3e5d7755
  5. 02 Dec, 2018 12 commits
  6. 01 Dec, 2018 8 commits
  7. 30 Nov, 2018 1 commit
    • Paul Eggert's avatar
      Fix infloop in GC mark_kboards · 7d9fa89f
      Paul Eggert authored
      * src/keyboard.c (KBD_BUFFER_SIZE): Now a constant, not a macro.
      (kbd_fetch_ptr, kbd_store_ptr): These now always point somewhere
      into kbd_buffer, instead of sometimes pointing just past the
      end which led to serious bugs (Bug#33547).  All uses changed.
      (kbd_store_ptr): No longer volatile.  This variable has not been
      accessed by a signal handler for some time, it seems.
      (next_kbd_event, prev_kbd_event): New functions.
      (kbd_buffer_nr_stored, process_special_events): Simplify.
      7d9fa89f