aboutsummaryrefslogtreecommitdiffstats
path: root/test/data (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add facility to make module functions interactive (Bug#23486).Philipp Stephani2020-09-131-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/module-env-28.h: Add field for 'make_interactive' function. * src/emacs-module.c (Lisp_Module_Function): Add new field holding the interactive form. (allocate_module_function): Adapt to structure layout change. (module_make_interactive, module_function_interactive_form): New functions. (initialize_environment): Use them. * src/eval.c (Fcommandp): * src/data.c (Finteractive_form): Also handle interactive module functions. * test/data/emacs-module/mod-test.c (Fmod_test_identity): New test function. (emacs_module_init): Create two interactive module test functions. * test/src/emacs-module-tests.el (module/interactive/return-t) (module/interactive/return-t-int, module/interactive/identity): New unit tests. * doc/lispref/internals.texi (Module Functions): Document new function. Rework paragraph about wrapping module functions, as the example no longer applies. * etc/NEWS: Document new facility.
* ; Fix license statements.Stefan Kangas2020-08-272-6/+10
|
* Remove mistakenly checked-in random_seed fileLars Ingebrigtsen2020-08-041-0/+0
|
* Add tests for mml-sec.elJens Lechtenbörger2020-08-0435-0/+31
|
* * test/data/emacs-module/mod-test.c (Fmod_test_string_a_to_b): Fix leakPhilipp Stephani2020-08-011-1/+3
|
* Merge from origin/emacs-27Glenn Morris2020-07-291-0/+31
|\ | | | | | | | | | | | | | | | | | | | | | | 1fc742b63e ; Update ChangeLog.3 4c7f6217da * etc/AUTHORS: Update. 24391f517a Update authors.el 56f958807c * etc/NEWS: Remove temporary markup. 73a2f51043 Add another test for global module references # Conflicts: # etc/AUTHORS # etc/NEWS
| * Add another test for global module referencesPhilipp Stephani2020-07-261-0/+31
| | | | | | | | | | | | | | | | | | * test/src/emacs-module-tests.el (mod-test-globref-reordered): New unit test. * test/data/emacs-module/mod-test.c (Fmod_test_globref_reordered): New test module function. (emacs_module_init): Export it.
| * Backport: add another test case for module assertions.Philipp Stephani2020-07-261-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | This backports commit 9f01ce6327 from master. Since the bug isn’t present on emacs-27, just backport the new test case. * test/data/emacs-module/mod-test.c (Fmod_test_globref_invalid_free): New test module function. (emacs_module_init): Export it. * test/src/emacs-module-tests.el (module--test-assertions--globref-invalid-free): New unit test.
| * Backport: Add module test for edge case.Philipp Stephani2020-07-261-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | This backports commit 6355a3ec62 from master. Since the bug isn’t present in emacs-27, just backport the test case. * test/data/emacs-module/mod-test.c (Fmod_test_invalid_store_copy): New test module function. (emacs_module_init): Export it. * test/src/emacs-module-tests.el (module--test-assertions--load-non-live-object-with-global-copy): New unit test.
| * Don't have exif bugging out on short stringsLars Ingebrigtsen2020-03-191-0/+0
| | | | | | | | | | | | | | * lisp/image/exif.el (exif--direct-ascii-value): New function (bug#40127). (exif--parse-directory): Use it to get the correct values for in-directory (i.e., shorter than 4 octets) strings.
* | Make checking for liveness of global values more precise.Philipp Stephani2020-07-251-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't just use a hash lookup because a global and a local reference might refer to the same Lisp object. * src/emacs-module.c (module_free_global_ref): More precise check for global liveness. * test/data/emacs-module/mod-test.c (Fmod_test_globref_invalid_free): New test module function. (emacs_module_init): Export it. * test/src/emacs-module-tests.el (module--test-assertions--globref-invalid-free): New unit test.
* | Fix subtle bug when checking liveness of module values.Philipp Stephani2020-07-251-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't simply look up the Lisp object in the global reference table because an invalid local and a valid global reference might refer to the same object. Instead, we have to test the address of the global reference against the stored references. * src/emacs-module.c (module_global_reference_p): New helper function. (value_to_lisp): Use it. * test/data/emacs-module/mod-test.c (Fmod_test_invalid_store_copy): New test module function. (emacs_module_init): Export it. * test/src/emacs-module-tests.el (module--test-assertions--load-non-live-object-with-global-copy): New unit test.
* | Use Gnulib libgmp modulePaul Eggert2020-07-091-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of doing GMP by hand, use the Gnulib libgmp module. * .gitignore: Add lib/gmp.h. * admin/merge-gnulib (GNULIB_MODULES): Add libgmp. * configure.ac (GMP_LIB, GMP_OBJ): Remove. Gnulib uses the name LIB_GMP, so all uses changed. All uses of GMP_OBJ removed. (HAVE_GMP): Set this from Gnulib’s variables. * lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate. * lib/mini-gmp-gnulib.c, lib/mini-gmp.c, lib/mini-gmp.h, m4/libgmp.m4: New files, copied from Gnulib. * src/bignum.h, test/data/emacs-module/mod-test.c: Include gmp.h unconditionally. * src/mini-gmp-emacs.c, src/mini-gmp.c, src/mini-gmp.h: Remove. This moves these files from src to lib, and updates them to the current GMP version. * test/Makefile.in (GMP_H): New macro. ($(test_module)): Use it to decide whether to compile mini-gmp-gnulib.c too.
* | Port the 'module/async-pipe' test to MS-WindowsEli Zaretskii2020-03-271-7/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These changes let the code compile and produce a valid DLL, but the test hangs. It looks like the hang is in Fdelete_process, when it closes one of the descriptors of the pipe process. In addition, this use of the pipe process cannot currently work on MS-Windows, since make-pipe-process doesn't set up the reader thread to read from the Emacs's side of the pipe, so the select emulation doesn't know there's stuff to read from that pipe. * test/data/emacs-module/mod-test.c [WINDOWSNT]: Include windows.h. (ALIGN_STACK) [!__x86_64__]: Define for 32-bit builds. (sleep_for_half_second): New function. (write_to_pipe): Declare return type differently for WINDOWSNT. Call sleep_for_half_second. (Fmod_test_async_pipe) [WINDOWSNT]: Use _beginthread as substitute for pthread_create. (invalid_finalizer): Replace non_ASCII character in a comment. * test/src/emacs-module-tests.el (module/async-pipe): Skip on MS-Windows, as the test fails and then hangs.
* | Add a module function to open a file descriptor connected to a pipe.Philipp Stephani2020-03-261-2/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A common complaint about the module API is that modules can't communicate asynchronously with Emacs. While it isn't possible to call arbitrary Emacs functions asynchronously, writing to a pipe should always be fine and is a pretty low-hanging fruit. This patch implements a function that adapts an existing pipe process. That way, users can use familiar tools like process filters or 'accept-process-output'. * src/module-env-28.h: Add 'open_channel' module function. * src/emacs-module.c (module_open_channel): Provide definition for 'open_channel'. (initialize_environment): Use it. * src/process.c (open_channel_for_module): New helper function. (syms_of_process): Define necessary symbol. * test/src/emacs-module-tests.el (module/async-pipe): New unit test. * test/data/emacs-module/mod-test.c (signal_system_error): New helper function. (signal_errno): Use it. (write_to_pipe): New function running in the background. (Fmod_test_async_pipe): New test module function. (emacs_module_init): Export it. * doc/lispref/internals.texi (Module Misc): Document new module function. * doc/lispref/processes.texi (Asynchronous Processes): New anchor for pipe processes. * etc/NEWS: Document 'open_channel' function.
* | Don't have exif bugging out on short stringsLars Ingebrigtsen2020-03-191-0/+0
| | | | | | | | | | | | | | * lisp/image/exif.el (exif--direct-ascii-value): New function (bug#40127). (exif--parse-directory): Use it to get the correct values for in-directory (i.e., shorter than 4 octets) strings.
* | Also print function data when printing module functions.Philipp Stephani2020-01-051-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is especially useful in cases where modules only use a single entry point and use the data to dispatch to the actual function. Such a design is common for languages such as Go and C++. * src/emacs-module.c (module_function_data): New function. * src/print.c (print_vectorlike): Use it to print module function data if not NULL. (print_object): Adapt size of buffer. * test/data/emacs-module/mod-test.c (emacs_module_init): Pass some non-NULL data to ‘mod-test-sum’. (Fmod_test_sum): Check that correct data is passed through. * test/src/emacs-module-tests.el (mod-test-sum-test) (module-function-object): Adapt unit tests.
* | Implement finalizers for module functions (Bug#30373)Philipp Stephani2020-01-031-2/+47
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/module-env-28.h: Add new module environment functions to module environment for Emacs 28. * src/emacs-module.h.in: Document that 'emacs_finalizer' also works for function finalizers. * src/emacs-module.c (CHECK_MODULE_FUNCTION): New function. (struct Lisp_Module_Function): Add finalizer data member. (module_make_function): Initialize finalizer. (module_get_function_finalizer) (module_set_function_finalizer): New module environment functions. (module_finalize_function): New function. (initialize_environment): Initialize new environment functions. * src/alloc.c (cleanup_vector): Call potential module function finalizer during garbage collection. * test/data/emacs-module/mod-test.c (signal_error): New helper function. (memory_full): Use it. (finalizer): New example function finalizer. (Fmod_test_make_function_with_finalizer) (Fmod_test_function_finalizer_calls): New test module functions. (emacs_module_init): Define them. * test/src/emacs-module-tests.el (module/function-finalizer): New unit test. * doc/lispref/internals.texi (Module Functions): Document new functionality. (Module Misc): Move description of 'emacs_finalizer' type to 'Module Functions' node, and add a reference to it. * etc/NEWS: Mention new functionality.
* Update copyright year to 2020Paul Eggert2020-01-013-3/+3
| | | | Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
* Rename faces used in faces-tests.elDmitry Gutov2019-12-102-5/+5
| | | | | | | | * test/data/themes/faces-test-light-theme.el: * test/data/themes/faces-test-dark-theme.el: Update accordingly. * test/lisp/faces-tests.el (faces--test-extend-with-themes): Don't use the diff-mode faces. Rename the definitions.
* Make ':extend' inherited from default spec unless overriddenDmitry Gutov2019-12-102-0/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/faces.el (face-spec-recalc): Handle the :extend attribute specially and always inherit it from the default spec unless overwritten in a theme (bug#37774). * test/lisp/faces-tests.el (faces--test-data-dir): New variable. (faces--test-extend-with-themes): Use test themes instead of ones from etc/themes. Update expected values. * test/data/themes/faces-test-dark-theme.el: New file. * test/data/themes/faces-test-light-theme.el: New file. * doc/lispref/display.texi (Face Attributes): Update the description of ':extend'. * etc/NEWS: Update the entry for ':extend'. * etc/themes/adwaita-theme.el: * etc/themes/deeper-blue-theme.el: * etc/themes/dichromacy-theme.el: * etc/themes/leuven-theme.el: * etc/themes/light-blue-theme.el: * etc/themes/manoj-dark-theme.el: * etc/themes/misterioso-theme.el: * etc/themes/tango-dark-theme.el: * etc/themes/tango-theme.el: * etc/themes/tsdh-dark-theme.el: * etc/themes/tsdh-light-theme.el: * etc/themes/wheatgrass-theme.el: * etc/themes/wombat-theme.el: Remove the now-redundant ':extend' attribute in all the themes.
* Fix recent modifications in emacs-module-testsEli Zaretskii2019-12-051-1/+1
| | | | | | | | | | | | * test/data/emacs-module/mod-test.c (extract_big_integer): Fix calculation of size of 'magnitude' when 'emacs_limb_t' is wider than 'unsigned long'. * test/src/emacs-module-tests.el (module--test-assertions--load-non-live-object) (module--test-assertions--call-emacs-from-gc): On MS-Windows, check also mod-test-emacs with ".exe" appended, before skipping the tests.
* Change module interface to no longer use GMP objects directly.Philipp Stephani2019-12-041-14/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As described in the new comment added to emacs-module.c, using GMP directly in the module interface has significant downsides: it couples the module interface directly to the implementation and requires module authors to link their module against the same GMP library as Emacs itself, which is often difficult and an unnecessary burden. By picking a representation for the magnitude that often matches the one used by GMP, we can avoid overhead when converting from and to GMP in most cases. Loading the test module in test/data/emacs-module and evaluating (dotimes (_ 10000) (mod-test-double (* 2 most-negative-fixnum))) under Callgrind shows that on my (GNU/Linux) machine Emacs only spends 10% of the CPU time of mod-test-double in mpz_import and mpz_export combined, even though that function does little else. (By contrast, 30% is spent in allocate_pseudovector.) * src/emacs-module.h.in: Don't check EMACS_MODULE_GMP. Don't include gmp.h. Remove emacs_mpz structure. Instead, define type alias emacs_limb_t and macro EMACS_LIMB_MAX. * src/module-env-27.h: Change interface of extract_big_integer and make_big_integer to take a sign-magnitude representation instead of mpz_t. * src/emacs-module.c: Don't check EMACS_MODULE_GMP or EMACS_MODULE_HAVE_MPZ_T. Add a comment about the chosen implementation. (module_extract_big_integer, module_make_big_integer): Reimplement without using mpz_t in the interface. * doc/lispref/internals.texi (Module Values): Adapt function documentation and example. Stop mentioning GMP and EMACS_MODULE_GMP. * test/data/emacs-module/mod-test.c: Don't define EMACS_MODULE_GMP or EMACS_MODULE_HAVE_MPZ_T. (memory_full, extract_big_integer, make_big_integer): New helper functions, identical to example in the Info documentation. (Fmod_test_nanoseconds, Fmod_test_double): Adapt to new interface.
* * test/lisp/minibuffer-tests.el (completion-table-test-quoting): New testStefan Monnier2019-11-261-0/+0
| | | | * test/data/minibuffer-test-cttq$tion: New file-name test data.
* Add an Exif parsing libraryLars Ingebrigtsen2019-09-211-0/+0
| | | | | | * lisp/image/exif.el: New file (bug#23070). * test/lisp/image/exif-tests.el: Add some basic tests.
* Port mod-test to --enable-gcc-warningsPaul Eggert2019-05-051-0/+2
| | | | | | * test/data/emacs-module/mod-test.c (NDEBUG): Undef, to prevent GCC from complaining “error: unused variable ‘dummy’” and failing to build the test, if --enable-gcc-warnings.
* Fix compilation of mod-test.c on MinGWEli Zaretskii2019-05-051-0/+4
| | | | | | * test/data/emacs-module/mod-test.c (Fmod_test_nanoseconds) [__MINGW32__]: Use _Static_assert, not static_assert, as the latter is not available in mingw.org's MinGW's assert.h.
* Use extract_time in test module.Philipp Stephani2019-05-051-17/+1
| | | | | | | | | * test/data/emacs-module/mod-test.c (Fmod_test_sleep_until): Use extract_time for time argument. (signal_wrong_type_argument): Remove unused function. * test/src/emacs-module-tests.el (mod-test-sleep-until): Remove unnecessary ‘float-time’.
* Export major version of latest Emacs supported by emacs-module.h.Philipp Stephani2019-04-281-0/+5
| | | | | | | | | | | | | | | This is useful if module authors want to support multiple versions of emacs-module.h. * configure.ac (emacs_major_version): Define substitution. * src/emacs-module.h.in (EMACS_MAJOR_VERSION): Define macro. * doc/lispref/internals.texi (Module Initialization): Document EMACS_MAJOR_VERSION preprocessor macro. * test/data/emacs-module/mod-test.c (emacs_module_init): Verify behavior of EMACS_MAJOR_VERSION.
* Unbreak build when building without GMP support.Philipp Stephani2019-04-241-2/+7
| | | | | | | | | | | | | | | | | | | | | Add support for a new preprocessor macro EMACS_MODULE_HAVE_MPZ_T to emacs-module.h. If this macro is defined, assume that mpz_t is already defined and don’t include gmp.h. Don’t document the new macro for now, as it’s unclear whether we want to support this in modules outside the Emacs tree. * src/emacs-module.h.in: Allow user to prevent inclusion of gmp.h. * src/emacs-module.c: Use mini-gmp if GMP is unavailable. Don’t include gmp.h. * src/lisp.h: Don’t require gmp.h. It’s not needed for lisp.h. * test/Makefile.in (GMP_LIB, GMP_OBJ): New variables. ($(test_module)): Use them. * test/data/emacs-module/mod-test.c: Use mini-gmp if GMP is unavailable.
* Clarify rounding mode when converting to struct timespec.Philipp Stephani2019-04-241-0/+17
| | | | | | | | | | | * doc/lispref/internals.texi (Module Values): Clarify that the truncation is towards negative infinity. * test/data/emacs-module/mod-test.c (Fmod_test_nanoseconds): Add test function. (emacs_module_init): Define it. * test/src/emacs-module-tests.el (mod-test-nanoseconds): New unit test.
* Add module functions to convert from and to big integers.Philipp Stephani2019-04-241-0/+19
| | | | | | | | | | | | | | | | | | | * src/module-env-27.h: Add new module functions to convert big integers. * src/emacs-module.h.in (emacs_mpz): Define if GMP is available. * src/emacs-module.c (module_extract_big_integer) (module_make_big_integer): New functions. (initialize_environment): Use them. * test/data/emacs-module/mod-test.c (Fmod_test_double): New test function. (emacs_module_init): Define it. * test/src/emacs-module-tests.el (mod-test-double): New unit test. * doc/lispref/internals.texi (Module Values): Document new functions.
* Add conversions to and from struct timespec to module interface.Philipp Stephani2019-04-241-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Time values are a fundamental data type, and such conversions are hard to implement within modules because of the various forms of time values in Emacs Lisp. Adding dedicated conversion functions can significantly simplify module code dealing with times. This approach uses nanosecond precision. While Emacs in theory has support for higher-precision time values, in practice most languages and standards, such as POSIX, C, Java, and Go, have settled on nanosecond-precision integers to represent time. * src/emacs-module.h.in: Add header for struct timespec. * src/module-env-27.h: Add module functions for time conversion. * src/emacs-module.c (module_extract_time, module_make_time): New functions. (initialize_environment): Use them. * test/data/emacs-module/mod-test.c (Fmod_test_add_nanosecond): New test function. (emacs_module_init): Define it. * test/src/emacs-module-tests.el (mod-test-add-nanosecond/valid) (mod-test-add-nanosecond/nil, mod-test-add-nanosecond/invalid): New unit tests. * doc/lispref/internals.texi (Module Values): Document time conversion functions.
* Revert "Revert "Revert "Rely on conservative stack scanning to find ↵Eli Zaretskii2019-03-221-3/+3
| | | | | | | | "emacs_value"s""" This reverts commit 093d3e78d21d3d6c718997368ef4b31f9884401c, which reverted ee7ad83f20903208404a84b58b7a478b62924570, which reverted 3eb93c07f7a60ac9ce8a16f10c3afd5a3a31243a.
* Revert "Revert "Rely on conservative stack scanning to find "emacs_value"s""Eli Zaretskii2019-03-211-3/+3
| | | | | | | | This reverts commit ee7ad83f20903208404a84b58b7a478b62924570. There was no consensus on reverting 3eb93c07f7a60ac9ce8a16f10c3afd5a3a31243a, so doing that will have to wait until the discussion ends.
* Revert "Rely on conservative stack scanning to find "emacs_value"s"Philipp Stephani2019-03-211-3/+3
| | | | | | | | This reverts commit 3eb93c07f7a60ac9ce8a16f10c3afd5a3a31243a. There was no consensus for that commit, see https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00150.html. Also, reverting this commit should fix Bug#31238.
* Ignore pending_signals when checking for quits.Philipp Stephani2019-02-241-1/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pending_signals is often set if no quit is pending. This results in bugs in module code if the module returns but no quit is actually pending. As a better alternative, add a new process_input environment function for Emacs 27. That function processes signals (like maybe_quit). * configure.ac: Add module snippet for Emacs 27. * src/module-env-27.h: New file. * src/emacs-module.h.in: Add process_input function to environment interface. * src/emacs-module.c (module_should_quit): Use QUITP macro to check whether the caller should quit. (module_process_input): New function. (initialize_environment): Use it. * src/eval.c: Remove obsolete comment. * test/data/emacs-module/mod-test.c (signal_wrong_type_argument) (signal_errno): New helper functions. (Fmod_test_sleep_until): New test module function. * test/src/emacs-module-tests.el (mod-test-sleep-until): New unit test. * doc/lispref/internals.texi (Module Misc): Document process_input.
* Handle HTML 'ol' start attribute in shr.elNicholas Drozd2019-02-222-0/+48
| | | | | | | | | | * lisp/net/shr.el (shr-tag-ol): Don't automatically assume 1-indexing for all ordered lists, use <ol> if given. * etc/NEWS: Announce change in shr behavior. * test/data/shr/ol.html: * test/data/shr/ol.txt: New test data files.
* * lisp/tar-mode.el (tar-extract): Call tar--try-jka-compr (bug#34251)Juri Linkov2019-02-032-0/+0
| | | | | | | | | | | | | | | | | | * lisp/tar-mode.el (tar--try-jka-compr): New function copied from archive-try-jka-compr. * lisp/arc-mode.el (archive-try-jka-compr): Set buffer-multibyte to t instead of let-binding coding-system-for-read to 'no-conversion. * test/data/decompress/tg.tar.gz: * test/data/decompress/zg.zip: New fixtures. * test/lisp/arc-mode-tests.el (arc-mode-test-zip-extract-gz): * test/lisp/tar-mode-tests.el (tar-mode-test-tar-extract-gz): New tests. * test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock) (diff-mode-test-font-lock-syntax-one-line): Skip unless shell and diff executables are found.
* * test/lisp/vc/diff-mode-tests.el (diff-mode-test-font-lock): New test.Juri Linkov2019-02-024-0/+14
| | | | | | | | | | | | | (diff-mode-test-font-lock-syntax-one-line): New test for one line. * test/data/vc/diff-mode/hello_world.c: * test/data/vc/diff-mode/hello_world_1.c: * test/data/vc/diff-mode/hello_emacs.c: * test/data/vc/diff-mode/hello_emacs_1.c: New fixtures. * lisp/vc/diff-mode.el (diff-syntax-fontify): Move remove-overlays from diff-syntax-fontify-hunk. (Bug#33567) (diff-syntax-fontify-hunk): Remove VISIT arg from insert-file-contents.
* Merge from origin/emacs-26Paul Eggert2018-12-311-1/+1
|\ | | | | | | | | | | 2fcf2df Fix copyright years by hand 26bed8b Update copyright year to 2019 2814292 Fix value of default frame height. (Bug#33921)
| * Update copyright year to 2019Paul Eggert2019-01-011-1/+1
| | | | | | | | Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
* | Merge from origin/emacs-26Glenn Morris2018-08-261-0/+19
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 54fb383 (origin/emacs-26) Fix detection of freed emacs_values (Bug#32... 769d0cd ; Fix out-of-tree build for mod-test.so 9a1329e Avoid crashes with very wide TTY frames on MS-Windows 9a613d3 Prevent `modify-file-local-variable-prop-line' from adding ex... 624e7dc Update GNOME bugtracker URLs 51ef6d5 Clarify in the Emacs manual that ChangeLog files are not used 6e08019 Recognize codepage 65001 as a valid encoding 1a350d7 ; * etc/NEWS: Fix format of first lines of some entries. 22d1f53 Avoid compilation warning in nt/addpm.c 7bc9ce7 Fix duplicate custom group names in bibtex.el a9cf938 Fix outdated text in the Calc manual Conflicts: etc/NEWS etc/PROBLEMS src/emacs-module.c src/gtkutil.c src/image.c src/xterm.c test/Makefile.in
| * Fix detection of freed emacs_values (Bug#32479)Sergey Vinokurov2018-08-251-0/+19
| | | | | | | | | | | | | | | | | | | | | | * src/emacs-module.c (module_free_global_ref): Compare a value to be freed with all entries of the list. * test/data/emacs-module/mod-test.c (Fmod_test_globref_free): New function. (emacs_module_init): Make it accessible from Lisp. * test/src/emacs-module-tests.el (mod-test-globref-free-test): New test which uses it.
* | Use 'defalias' in test module instead of 'fset'.Philipp Stephani2018-02-021-2/+2
| | | | | | | | | | | | | | | | | | | | This puts functions defined in the module into the 'load-history'. * test/data/emacs-module/mod-test.c (bind_function): Use 'defalias' instead of 'fset'. * test/src/emacs-module-tests.el (module/describe-function-1): Adapt unit test.
* | Merge from origin/emacs-26Glenn Morris2018-01-201-6/+31
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | cfc94fd (origin/emacs-26) Don't mention 'vc-stay-local' in the user m... 8ce430b Fix a typo in calendar.texi bb748b3 Minor improvement in wording of the Emacs manual b603aff Revert "Fix tempfile creation when byte compiling" 4fd446e Fix tempfile creation when byte compiling 7f48a11 Improve the Emacs manual as suggested in emacs-manual-bugs 728ded0 * lisp/emacs-lisp/bytecomp.el: Tweak last change c6c05e2 Unbreak building Emacs on FreeBSD a41ad3d Don't unnecessarily use non-ASCII characters in C sources c28d4b6 Portability fixes in emacs-module-tests 1d50c18 Add tests for term.el
| * Portability fixes in emacs-module-testsEli Zaretskii2018-01-191-6/+31
| | | | | | | | | | | | | | | | | | | | * test/Makefile.in (abs_top_srcdir): Add variable, needed by CPPFLAGS. * test/data/emacs-module/mod-test.c: Include <limits.h>. (pT, pZ, T_TYPE, Z_TYPE): Compatibility macros, for systems that don't support %td and %zu format specs. (emacs_module_init): Use compatibility macros to make the error messages print meaningful values (and avoid compiler warnings).
* | Merge from origin/emacs-26Paul Eggert2018-01-011-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 63b04c11d5 Fix copyright years by hand 5c7dd8a783 Update copyright year to 2018 220a9ecba1 Merge from Gnulib 312c565566 Don't add empty keyboard macro to macro ring (Bug#24992) 39ca289a7a Allow customization of decoding of "man" command f8240815ea * etc/NEWS: Add security consideration note on passphrase ... 0c78822c70 Fix subtle problem with scroll-down when scroll-margin is ... acd289c5a4 Fix problems with indexing in User manual b240c7846b * lisp/help.el (describe-key): Only (copy-sequence elt) wh... e879a5444a * src/buffer.c (Frestore_buffer_modified_p): Fix bug#29846 81b1028b63 Improve documentation of 'inhibit-modification-hooks' and ... 7175496d7a Fix doc string of 'enable-recursive-minibuffers' 5b38406491 Fix documentation of delsel and of killing text # Conflicts: # etc/NEWS # etc/refcards/ru-refcard.tex
| * Update copyright year to 2018Paul Eggert2018-01-011-1/+1
| | | | | | | | Run admin/update-copyright.
* | Add MIME apps spec utilitiesMark Oteiza2017-09-262-0/+13
|/ | | | | | | | | | | | Facilitates finding associations between MIME types and desktop files that report an association with that type. Combined with mailcap.el's MIME facilities, it should be easy to use desktop files. * lisp/xdg.el (xdg-mime-table): New variable. (xdg-mime-apps-files, xdg-mime-collect-associations, xdg-mime-apps): New functions. * test/data/xdg/mimeapps.list: New file. * test/data/xdg/mimeinfo.cache: New file. * test/lisp/xdg-tests.el (xdg-mime-associations): New test.