1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-06 22:12:30 -08:00
Commit graph

47962 commits

Author SHA1 Message Date
Eli Zaretskii
9d93c6ba14 ; * src/xdisp.c: Fix typos in the commentary. 2023-07-19 19:28:48 +03:00
Eli Zaretskii
86f2d6d62f ; * src/xdisp.c: Improve commentary. (Bug#64596) 2023-07-19 17:54:53 +03:00
Mattias Engdegård
f063f79a49 Convert NUL-containing NSString objects to Lisp strings correctly
This cures the inability to paste text containing NUL from other
applications on macOS, introduced by mistake in 7e3c2b553f
(bug#64697).

* src/nsfns.m ([NSString lispString]): Use make_string instead of
build_string which relies on NUL-termination.
2023-07-18 15:51:37 +02:00
Eli Zaretskii
77f489421e ; * src/xdisp.c: Minor improvements of the commentary. 2023-07-18 14:58:09 +03:00
Eli Zaretskii
d78e670237 ; * src/lisp.h: Improve commentary for XIL, XLI, XLP (bug#64645). 2023-07-15 13:04:41 +03:00
Eli Zaretskii
7ac947f34c ; * src/lisp.h (struct Lisp_Overlay): Update commentary (bug#64580). 2023-07-13 11:33:54 +03:00
Gregory Heytings
8e06809fcc Merge branch 'scratch/bug64391' into emacs-29 2023-07-08 19:30:17 +00:00
Eli Zaretskii
f8a918c977 ; * src/coding.c (Fcoding_system_put): Improve doc string. 2023-07-07 10:29:55 +03:00
Eli Zaretskii
0d90873fa4 ; * src/indent.c (Fvertical_motion): Doc fix. 2023-07-07 09:16:12 +03:00
Gregory Heytings
01fb898420 Simplify after adding internal function to enter a labeled restriction
* src/editfns.c: (Finternal__labeled_narrow_to_region): Merge the
code of Finternal__label_restriction into this function.
(Finternal__label_restriction): Remove this function.
(syms_of_editfns): Remove the 'outermost-restriction' buffer local
variable, which is not used anymore, and the symbol of
'internal--label-restriction'.
(Fwiden): Remove the call to reset the 'outermost-restriction'
buffer local variable.
2023-07-06 17:14:20 +00:00
Gregory Heytings
b741dc7fcd Add internal function to enter a labeled restriction
* src/editfns.c (Finternal__labeled_narrow_to_region): New
function.  A specific function is necessary to avoid unnecessary
slowdowns when 'narrow-to-region'/'widen' are called in a loop.
(Fnarrow_to_region): Remove the call to Fset, which has been moved
into Finternal__labeled_narrow_to_region.
(labeled_narrow_to_region): Use the new function.
(syms_of_editfns): Add the symbol of the new function.

* lisp/subr.el (internal--with-restriction): Use the new function.
2023-07-06 17:14:17 +00:00
Eli Zaretskii
37ed3d15f3 Avoid errors in completion due to 'completion-regexp-list'
* doc/lispref/minibuf.texi (Basic Completion):
* src/minibuf.c (syms_of_minibuf) <completion-regexp-list>:
Document that global non-nil settings of 'completion-regexp-list'
are not safe.

* lisp/minibuffer.el (completion-pcm--merge-completions): Avoid
errors in 'try-completion' when PREFIX is nil.  (Bug#64351)
2023-07-02 09:16:58 +03:00
Yuan Fu
02b6be892f
Add missing calls to treesit_record_change in editfns.c
These should be all that are missing.  See the next commit for detail.

* src/editfns.c (Ftranslate_region_internal):
(Ftranspose_regions): Call treesit_record_change.
2023-06-29 11:15:29 -07:00
Yuan Fu
e982192e93
Call treesit_record_change in subst-char-in-region (bug#64329)
* src/editfns.c (Fsubst_char_in_region): Call treesit_record_change in
the else branch.
2023-06-29 11:15:29 -07:00
Eli Zaretskii
fa06249a9f Fix "C-x RET r" when the new encoding is UTF
* src/fileio.c (Finsert_file_contents): Update point of
'conversion_buffer' before decoding the last block.  (Bug#64253)
2023-06-24 11:49:14 +03:00
Eli Zaretskii
e962cf4ba7 Fix building --with-native-compilation=aot from release tarball
* lisp/Makefile.in (%.eln): Pattern rule for AOT native
compilation.
(compile-eln-targets, compile-eln-aot): New targets for AOT native
compilation.

* src/Makefile.in (../native-lisp): If NATIVE_COMPILATION_AOT is
set, also native-compile all the other Lisp files.
(Bug#64167)
2023-06-22 14:03:17 +03:00
Alan Mackenzie
4ca371e9cc Fix bug#64152 (Minibuffer sometimes goes "modal")
In particular, when a frame has no minibuffer and is using that
of a different "normal" frame, C-x 5 o, etc., and GUI
operations fail.

Fix by partially reverting the commit from 2022-07-07 15:38:09
+0000 "Remove obscure, obsolete code from do_switch_frame".  As
a consequent change, also revert the commit from 2022-07-08
20:19:03 +0000 "Remove now unused parameter TRACK from
do_switch_frame".

* src/frame.c (do_switch_frame): Restore the TRACK parameter.
Restore the code which redirects the frame focus when a new
frame gets selected.

* src/frame.c (Fselect_frame, Fhandle_switch_frame)
(delete_frame)
* src/keyboard.c (quit_throw_to_read_char)
* src/lisp.h (do_switch_frame prototype)
* src/minibuf.c (read_minibuf_unwind)
* src/window.c (Fset_window_configuration): Restore the TRACK
argument to do_switch_frame.

* src/xterm.c (x_try_restore_frame): Add a zero TRACK argument
to do_switch_frame.
2023-06-21 14:23:14 +00:00
Alan Mackenzie
90c03ffcd4 After minibuffer action, don't make the minibuffer current
This fixes bug#63967.

* src/minibuf.c (minibuffer_unwind): After restoring the next
minibuffer outwards to the mini window (when
enable-recursive-minibuffers is non-nil), don't call
Fset_frame_selected_window, which used to set the current
window to be the mini window.
2023-06-17 16:14:14 +00:00
Po Lu
c835758238 ; * src/lread.c (bytecode_from_rev_list): Avoid C++ comment. 2023-06-14 13:54:53 +08:00
Gregory Heytings
8225ade615 ; * src/xdisp.c (syms_of_xdisp) <display-line-numbers>: Fix typo 2023-06-13 13:12:55 +00:00
Michael Albinus
1383efe01d Fix setting $DBUS_SESSION_BUS_ADDRESS after Emacs has started
* doc/misc/dbus.texi (Alternative Buses): Explain using
$DBUS_SESSION_BUS_ADDRESS after Emacs has started.

* src/dbusbind.c (XD_DBUS_VALIDATE_BUS_ADDRESS): Use egetenv.
2023-06-12 12:45:38 +02:00
Eli Zaretskii
9855a3ea74 ; * src/xdisp.c (redisplay_tool_bar): Fix a typo in a comment. 2023-06-09 19:19:07 +03:00
Andrea Corallo
65f355ea0a ; Update my mail address
* lisp/emacs-lisp/comp-cstr.el: Update author mail.
* lisp/emacs-lisp/comp.el: Likewise.
* src/comp.c: Likewise.
* test/lisp/emacs-lisp/comp-cstr-tests.el: Likewise.
* test/src/comp-resources/comp-test-funcs-dyn.el: Likewise.
* test/src/comp-resources/comp-test-funcs.el: Likewise.
* test/src/comp-resources/comp-test-pure.el: Likewise.
* test/src/comp-tests.el: Likewise.
2023-06-08 11:04:10 +02:00
Eli Zaretskii
95ee5477e1 ; * src/lread.c (read0, skip_lazy_string): Fix commentary again. 2023-05-26 15:11:35 +03:00
Eli Zaretskii
f42de74ebe ; * src/lread.c (read0, skip_lazy_string): Fix commentary wording. 2023-05-26 12:30:40 +03:00
Mattias Engdegård
f535c0e49d Handle #@00 in new reader in a compatible way (bug#63722)
This was a regression from Emacs 28.

* src/lread.c (skip_lazy_string, read0): Make #@00 read as nil, which
is a quirk from the old reader that we preserve for compatibility.
* test/src/lread-tests.el (lread-skip-to-eof): Verify it.

Reported by Richard Newton.
2023-05-26 10:22:51 +02:00
Po Lu
4205268675 Don't mark selection request events
* src/pgtkterm.c (mark_pgtkterm): Prevent crash by not marking
selection request events, which don't have Lisp_Object members.
2023-05-26 08:43:18 +08:00
Eli Zaretskii
d292d28229 Fix rare crashes in 'try_window_reusing_current_matrix'
* src/xdisp.c (try_window_reusing_current_matrix): Make sure we
never use a mode-line glyph row to start displaying scrolled-in
rows.  (Bug#63711)
2023-05-25 20:50:46 +03:00
Eli Zaretskii
765edc204d ; Support SQLite3 extensions on macOS
* src/sqlite.c (Fsqlite_load_extension): Support *.dylib
extensions.  (Bug#63653)
2023-05-23 17:53:07 +03:00
Eli Zaretskii
5aadb87d6f Fix 'use-dialog-box-p' and friends
* lisp/subr.el (use-dialog-box-p): Use dialog boxes also when
invoked from some window-system gesture.  (Bug#63655)
(y-or-n-p): Fix the description in the doc string of conditions
under which a dialog box will be used.

* src/fns.c (Fyes_or_no_p): Use the same condition for dialog
boxes as in 'use-dialog-box-p'.  Fix the description in the doc
string of conditions under which a dialog box will be used.

* doc/lispref/minibuf.texi (Multiple Queries, Yes-or-No Queries):
Fix the description of conditions under which a dialog box will be
used.
2023-05-23 17:44:23 +03:00
Eli Zaretskii
a347b26cba Disable loading SQLite3 extensions when SQLite3 version is too old
* src/sqlite.c (HAVE_LOAD_EXTENSION): Define to 1 only if
enabling/disabling extension loading is supported as well.
(load_dll_functions, Fsqlite_load_extension): Condition on
HAVE_LOAD_EXTENSION, not on HAVE_SQLITE3_LOAD_EXTENSION.
(Bug#63653)
2023-05-23 14:30:31 +03:00
Eli Zaretskii
ead3a2abbf Fix loading SQLite extensions
* src/sqlite.c (sqlite3_db_config) [WINDOWSNT]: Load from the DLL.
(Fsqlite_load_extension): Use 'sqlite3_db_config' to enable and
disable loading of extensions.  Add a few free extensions to the
allow-list.  Fix testing for the ".dll" extension.  (Bug#63590)

* test/src/sqlite-tests.el (sqlite-load-extension): Fix the test
to require successful load if the extension does exist.
2023-05-20 15:43:44 +03:00
Aaron Jensen
f8d9e40d2c Attempt to fix redisplay problems on macOS
* src/nsterm.m (ns_scroll_run): Attempt to fix redisplay
artifacts.  (Bug#63187)
2023-05-18 14:20:18 +03:00
Gregory Heytings
dcf8c01102 Merge branch 'scratch/long-lines-cleanup' into 'emacs-29' 2023-05-13 00:13:44 +02:00
Gregory Heytings
1e3a66df45 Add an assertion in, and a commentary for, 'get_nearby_bol_pos'
* src/xdisp.c:
(get_nearby_bol_pos): Document the function, and add an assertion
on its return value.
2023-05-13 00:11:36 +02:00
Gregory Heytings
f0f08eeb05 Fix the return type of 'labeled_restrictions_get_bound'
* src/editfns.c:
(labeled_restrictions_get_bound): Return a Lisp_Object instead of
a pointer to a struct Lisp_Marker.
(unwind_reset_outermost_restriction, reset_outermost_restrictions)
(Fwiden, Fnarrow_to_region): Adapt to the new return type.
2023-05-13 00:11:33 +02:00
Eli Zaretskii
acf4763417 Fix mouse highlight with some fonts in Cairo builds
* src/ftcrfont.c (ftcrfont_draw): Don't set the
'background_filled_p' flag of the glyph string.  (Bug#63271)
2023-05-12 22:19:35 +03:00
Stefan Monnier
93005cd9dc with-display-message: Workaround for bug#63253
Running arbitrary ELisp code from an atimer is still dangerous,
at least because the regexp engine is not-reentrant, so let's patch up
the case we bumped into.  There are probably many other such holes :-(

* src/alloc.c (garbage_collection_inhibited): Make it non-static.

* src/xdisp.c (garbage_collection_inhibited): Declare it.
(set_message, clear_message): Use it as a proxy for "we're in
a dangerous context like within `probably_quit`".
2023-05-09 22:30:52 -04:00
Eli Zaretskii
d94ea9efca Avoid crashes in --without-all build trying to scale non-ASCII char
* src/fontset.c (face_for_char): Display a non-ASCII character as
glyphless if the ASCII face has no fontset.  (Bug#63283)
2023-05-09 08:20:57 +03:00
Alan Third
c1363a04bb Fix crash when creating a child frame in NS (bug#63107)
* src/nsterm.m ([EmacsView initFrameFromEmacs:]): Have a second go at
creating the toolbar.
([EmacsWindow createToolbar:]): If there is already a toolbar or the
EmacsView's layer is not an EmacsLayer, then do nothing.

(cherry picked from commit 3adc1e7f37)
2023-05-08 09:49:03 +01:00
Po Lu
b1bda8228e More fixes for NetBSD/vax
* src/sysdep.c (init_signals) [__vax__]: Treat SIGILL
as a floating point error on VAXen.
Otherwise, (log 0.0) crashes Emacs.
2023-05-05 14:15:23 +08:00
Eli Zaretskii
46392c1623 Fix vertical-motion when tab-line is displayed in a window
* src/xdisp.c (try_window, try_window_id): Account for tab-line,
if present, when converting scroll-margin at the top of the window
to vertical pixel coordinate.  (Bug#63201)
2023-05-01 15:27:21 +03:00
Eli Zaretskii
ca43435816 Fix redisplay of mode line after its format changes from nil
* src/dispnew.c (update_window): Make sure a mode-line's row of
the current glyph matrix is disabled when the mode line is not
being displayed.  (Bug#63186)
2023-04-30 16:24:05 +03:00
Eli Zaretskii
b4f2f49978 Fix documentation of libxml-parse-* functions
* doc/lispref/text.texi (Parsing HTML/XML):
* src/xml.c (Flibxml_parse_html_region, Flibxml_parse_xml_region):
Update the documentation regarding the use of BASE-URL argument.
(Bug#63125)
2023-04-29 09:39:15 +03:00
Eli Zaretskii
5dd784961d ; * src/treesit.c (syms_of_treesit): Fix error messages. 2023-04-28 21:14:32 +03:00
Po Lu
a40f181623 Fix two crashes upon startup
* src/image.c (image_create_bitmap_from_data)
(image_create_bitmap_from_file): Specify a Window or a Pixmap
describing the screen, not a back buffer drawable which may not exist.
Otherwise, Emacs crashes on startup when a bitmap icon is in use.
2023-04-28 11:47:46 +08:00
Eli Zaretskii
98c6cfcbe4 Don't support versioned grammar libraries on MS-Windows
* src/treesit.c (treesit_load_language_push_for_each_suffix):
Don't append ".0.0" on WINDOWSNT.
2023-04-24 21:46:35 +03:00
Yuan Fu
8f71c1546d
Accept versioned tree-sitter language grammar files
By discussion on emacs-devel, titled "Versioned Tree-sitter parser
libraries".

* src/treesit.c (Vtreesit_str_dot_0): New variable.
(treesit_load_language_push_for_each_suffix): Additionally look for
lib_base_name.0 and lib_base_name.0.0.
(syms_of_treesit): Initialize Vtreesit_str_dot_0.
2023-04-24 10:38:40 -07:00
Eli Zaretskii
9a0f10b5f8 Fix line-number-at-pos when POSITION is out of narrowing
* src/fns.c (Fline_number_at_pos): Don't signal an error when
ABSOLUTE is nil and POSITION is outside of the narrowing, like the
original Lisp implementation did.  Minor speedup by using the byte
position where it is available from the get-go.  (Bug#62857)
2023-04-22 19:27:16 +03:00
Eli Zaretskii
3899acbb33 ; * src/fringe.c: Fix description of large circle. (Bug#62961) 2023-04-20 13:06:24 +03:00