1. 01 Jan, 2020 2 commits
    • Paul Eggert's avatar
      Update from gnulib · 64d1b9fd
      Paul Eggert authored
      This incorporates:
      2019-12-23 mktime, nstrftime: tweak division performance
      2019-12-22 count-leading-zeros: assume 'long long'
      2019-12-22 count-one-bits: assume 'long long'
      2019-12-22 count-trailing-zeros: assume 'long long'
      2019-12-12 inttypes-incomplete: assume 'long long'
      2019-12-22 malloca: assume 'long long'
      2019-12-22 stdint: assume 'long long'
      2019-12-22 strtoll, strtoimax, strtoumax: assume 'long long'
      2019-12-22 prefer lib_SOURCES to unconditional AC_LIBOBJ
      2019-12-19 nstrftime: avoid a shadowing warning
      2019-12-18 improve port of AC_C_RESTRICT to Oracle C++
      2019-12-12 stdalign: port to xlclang 16.01
      2019-12-11 stddef, unistd: fix compilation error in C++ mode on MSVC
      2019-12-08 fix compilation errors in C++ mode on Haiku
      2019-12-08 fix compilation errors in 32-bit C++ mode on HP-UX 11/ia64
      2019-12-08 fix compilation error in C++ mode on OpenBSD
      * build-aux/config.guess, doc/misc/texinfo.tex:
      * lib/count-leading-zeros.h, lib/count-one-bits.h:
      * lib/count-trailing-zeros.h, lib/inttypes.in.h, lib/malloca.h:
      * lib/mktime.c, lib/nstrftime.c, lib/signal.in.h, lib/stdalign.in.h:
      * lib/stddef.in.h, lib/stdint.in.h, lib/stdio.in.h, lib/stdlib.in.h:
      * lib/strtoimax.c, lib/unistd.in.h, m4/gnulib-common.m4:
      * m4/inttypes.m4, m4/largefile.m4, m4/malloca.m4, m4/strtoimax.m4:
      * m4/strtoll.m4:
      Copy from Gnulib.  Also, change copyright notices in some other
      Gnulib-copied files to exactly match Gnulib, as Gnulib updated
      them in a trivially different way.
      * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
      64d1b9fd
    • Paul Eggert's avatar
      Update copyright year to 2020 · 365e01cc
      Paul Eggert authored
      Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
      365e01cc
  2. 01 Jan, 2019 2 commits
    • Paul Eggert's avatar
      Update from Gnulib · 11549870
      Paul Eggert authored
      This incorporates mostly just copyright-year changes, plus
      recent minor updates from glibc for the non-Emacs regular
      expression code.
      11549870
    • Paul Eggert's avatar
      Update copyright year to 2019 · 26bed8ba
      Paul Eggert authored
      Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
      26bed8ba
  3. 01 Jan, 2018 1 commit
    • Paul Eggert's avatar
      Merge from Gnulib · 220a9ecb
      Paul Eggert authored
      This incorporates:
      2018-01-01 maint: Run 'make update-copyright'
      2017-12-29 Add cross-compilation results for GNU/Hurd.
      2017-12-12 explicit_bzero: port to macOS + Clang 9.0.0
      220a9ecb
  4. 13 Sep, 2017 1 commit
    • Paul Eggert's avatar
      Merge from Gnulib · a0202fdc
      Paul Eggert authored
      This incorporates:
      2017-09-13 all: prefer https: URLs
      This just changes http: to https: in comments,
      in files copied from Gnulib.
      a0202fdc
  5. 01 Jan, 2017 2 commits
    • Paul Eggert's avatar
      Merge from gnulib · 5a59e28d
      Paul Eggert authored
      This incorporates:
      2016-12-19 stdint: Fix WINT_MAX to match wint_t on mingw
      2016-12-18 getopt: Fix link error for users of getopt() in <unistd.h>
      2016-12-17 getlogin: Port to newer mingw
      2016-12-17 stdint: Fix WINT_MAX to match wint_t on MSVC
      2016-12-17 Avoid redefinition errors on MSVC
      * lib/getopt.in.h, lib/stdint.in.h, lib/stdio.in.h, lib/unistd.in.h:
      * m4/stdint.m4, m4/unistd_h.m4:
      Copy from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      Plus, this commit updates the indenting on copyright notices to
      match that of gnulib.
      5a59e28d
    • Paul Eggert's avatar
      Update copyright year to 2017 · 5badc81c
      Paul Eggert authored
      Run admin/update-copyright.
      5badc81c
  6. 08 Sep, 2016 1 commit
    • Paul Eggert's avatar
      Update from gnulib · 12a7e0f8
      Paul Eggert authored
      This incorporates:
      2016-09-07 flexmember: new macro FLEXALIGNOF
      2016-09-07 flexmember: port better to GCC + valgrind
      2016-08-18 Port modules to use getprogname explicitly
      2016-09-02 manywarnings: add -fno-common
      * admin/merge-gnulib (GNULIB_TOOL_FLAGS): Don’t avoid flexmember,
      since time_rz now uses part of it.  Instead, remove m4/flexmember.m4.
      * configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Define away,
      since Emacs assumes C99 and therefore removes m4/flexmember.m4.
      * lib/euidaccess.c, lib/group-member.c, lib/time_rz.c:
      * m4/manywarnings.m4: Copy from gnulib.
      * lib/flexmember.h: New file, from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      12a7e0f8
  7. 19 Jan, 2016 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · cd19641e
      Paul Eggert authored
      This mostly just updates copyright dates of gnulib files.
      It also updates to the latest version of texinfo.tex.
      cd19641e
  8. 01 Jan, 2016 1 commit
    • Paul Eggert's avatar
      Merge from gnulib · 98253051
      Paul Eggert authored
      This mostly just updates copyright dates of gnulib files.
      It also updates to the latest version of texinfo.tex.
      98253051
  9. 28 Jan, 2015 1 commit
    • Paul Eggert's avatar
      Merge from gnulib and try to repair bad merge · 39c2fa3f
      Paul Eggert authored
      This attempts to repair problems introduced by the bad merge
      5491fd10.  The easiest way for me
      to fix the badly-merged gnulib files was to run
      'admin/merge-gnulib', so I did that, which also imported the
      following changes:
      * build-aux/update-copyright, m4/gnulib.m4:
      Update from gnulib, incorporating:
      2015-01-15 time: port to MinGW32 3.21
      2015-01-15 update-copyright: apply to self
      2015-01-11 update-copyright: recognize groff's \(co marker
      39c2fa3f
  10. 01 Jan, 2015 2 commits
  11. 01 Jan, 2014 1 commit
  12. 02 Jan, 2013 1 commit
  13. 14 Nov, 2012 1 commit
    • Paul Eggert's avatar
      Use faccessat, not access, when checking file permissions. · 73dcdb9f
      Paul Eggert authored
      This fixes a bug that has been present in Emacs since its creation.
      It was reported by Chris Torek in 1983 even before GNU Emacs existed,
      which must set some sort of record.  (Torek's bug report was against
      a predecessor of GNU Emacs, but GNU Emacs happened to have the
      same common flaw.)  See Torek's Usenet posting
      "setuid/setgid programs & Emacs" Article-I.D.: sri-arpa.858
      Posted: Fri Apr  8 14:18:56 1983.
      * .bzrignore: Add lib/fcntl.h.
      * configure.ac (euidaccess): Remove check; gnulib does this for us now.
      (gl_FCNTL_O_FLAGS): Define a dummy version.
      * lib/at-func.c, lib/euidaccess.c, lib/faccessat.c, lib/fcntl.in.h:
      * lib/getgroups.c, lib/group-member.c, lib/root-uid.h:
      * lib/xalloc-oversized.h, m4/euidaccess.m4, m4/faccessat.m4:
      * m4/fcntl_h.m4, m4/getgroups.m4, m4/group-member.m4:
      New files, from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Add faccessat.
      (GNULIB_TOOL_FLAGS): Avoid at-internal, fchdir, malloc-posix,
      openat-die, openat-h, save-cwd.  Do not avoid fcntl-h.
      Omit gnulib's m4/fcntl-o.m4.
      * nt/inc/ms-w32.h (AT_FDCWD, AT_EACCESS): New symbols.
      (access): Remove.
      (faccessat): New macro.
      * src/Makefile.in (LIB_EACCESS): New macro.
      (LIBES): Use it.
      * src/callproc.c (init_callproc):
      * src/charset.c (init_charset):
      * src/fileio.c (check_existing, check_executable, check_writable)
      (Ffile_readable_p):
      * src/lread.c (openp, load_path_check):
      * src/process.c (allocate_pty):
      * src/xrdb.c (file_p):
      Use effective UID when checking permissions, not real UID.
      * src/callproc.c (init_callproc):
      * src/charset.c (init_charset):
      * src/lread.c (load_path_check, init_lread):
      Test whether directories are accessible, not merely whether they exist.
      * src/conf_post.h (GNULIB_SUPPORT_ONLY_AT_FDCWD): New macro.
      * src/fileio.c (check_existing, check_executable, check_writable)
      (Ffile_readable_p):
      Use symbolic names instead of integers for the flags, as they're
      portable now.
      (check_writable): New arg AMODE.  All uses changed.
      Set errno on failure.
      (Ffile_readable_p): Use faccessat, not stat + open + close.
      (Ffile_writable_p): No need to call check_existing + check_writable.
      Just call check_writable and then look at errno.  This saves a syscall.
      dir should never be nil; replace an unnecessary runtime check
      with an eassert.  When checking the parent directory of a nonexistent
      file, check that the directory is searchable as well as writable, as
      we can't create files in unsearchable directories.
      (file_directory_p): New function, which uses 'stat' on most platforms
      but faccessat with D_OK (for efficiency) if WINDOWSNT.
      (Ffile_directory_p, Fset_file_times): Use it.
      (file_accessible_directory_p): New function, which uses a single
      syscall for efficiency.
      (Ffile_accessible_directory_p): Use it.
      * src/xrdb.c (file_p): Use file_directory_p.
      * src/lisp.h (file_directory_p, file_accessible_directory_p): New decls.
      * src/lread.c (openp): When opening a file, use fstat rather than
      stat, as that avoids a permissions race.  When not opening a file,
      use file_directory_p rather than stat.
      (dir_warning): First arg is now a usage string, not a format.
      Use errno.  All uses changed.
      * src/nsterm.m (ns_term_init): Remove unnecessary call to file-readable
      that merely introduced a race.
      * src/process.c, src/sysdep.c, src/term.c: All uses of '#ifdef O_NONBLOCK'
      changed to '#if O_NONBLOCK', to accommodate gnulib O_* style,
      and similarly for the other O_* flags.
      * src/w32.c (sys_faccessat): Rename from sys_access and switch to
      faccessat's API.  All uses changed.
      * src/xrdb.c: Do not include <sys/stat.h>; no longer needed.
      (magic_db): Rename from magic_file_p.
      (magic_db, search_magic_path): Return an XrmDatabase rather than a
      char *, so that we don't have to test for file existence
      separately from opening the file for reading.  This removes a race
      fixes a permission-checking problem, and simplifies the code.
      All uses changed.
      (file_p): Remove; no longer needed.
      
      Fixes: debbugs:12632
      73dcdb9f
  14. 19 Oct, 2012 2 commits