Commit graph

40084 commits

Author SHA1 Message Date
Glenn Morris
b1cf262a79 Merge from origin/emacs-26
b3f4a3a (origin/emacs-26) Special-case %DUMBFW for GnuTLS between 3.2...
c2ae057 Work around GnuTLS version issues with %DUMBFW (tiny change)
2f9d9ef ; Remove the mention of "plain C code" in the docstring as well
aca827b Merge branch 'widen-less' into emacs-26
87548f5 ; Rephrase NEWS entry a bit
da0d773 (emacs-26) ; * lisp/erc/erc.el: Update URL.
3a60515 * lisp/erc/erc.el (erc-shorten-server-name): Silence compiler...
471b6c1 ; Replace non-ascii quote characters in doc strings etc
7af7f5e Fix some more aliases to user options
79fb4b5 Fix some flymake aliases
b9fbc03 (origin/widen-less) Widen in indent-for-tab-command in the no...
446faf3 Replace the mention of c-indent-defun with js-indent-line
7e9eef0 Consolidate 'widen' calls

# Conflicts:
#	etc/NEWS
#	lisp/progmodes/flymake-proc.el
2017-12-20 21:15:43 -05:00
Glenn Morris
b5f140166a Merge from origin/emacs-26
4122d54 Fix updating scrollbar sizes when scaling is in effect
21a212f Collect GnuTLS extensions and use them to set %DUMBFW if supp...
936136e * test/lisp/emacs-lisp/derived-tests.el: Fix copy&paste lefto...
07b7fb9 * lisp/subr.el (delayed-after-hook-functions): Rename from .....
a5b0a4e * lisp/net/shr.el (shr-string-pixel-width): Return pixel-widt...
c51e797 python.el doc fixes
c62ced5 Make 'mouse-drag-and-drop-region' more robust and customizable
2017-12-20 21:14:19 -05:00
Ted Zlatanov
b3f4a3a5ae
Special-case %DUMBFW for GnuTLS between 3.2.5 and 3.5.1
* src/gnutls.c: Introduce HAVE_GNUTLS_EXT__DUMBFW for GnuTLS >= 3.2.5.
(Fgnutls_available_p): Use it.
2017-12-20 20:12:42 -05:00
Andy Moreton
c2ae057d0e
Work around GnuTLS version issues with %DUMBFW (tiny change)
* src/gnutls.c: Introduce HAVE_GNUTLS_EXT_GET_NAME and use it.
(init_gnutls_functions): Use it.
(Fgnutls_available_p): Use it (Bug#25061). Fix Vlibrary_cache bug.
2017-12-20 20:07:54 -05:00
Philipp Stephani
615c5cf0a6 Define helper functions only if needed
* src/json.c (JSON_HAS_ERROR_CODE): New define.
(json_parse_error): Use it.
(json_has_prefix, json_has_suffix): Define only if needed.
2017-12-20 18:36:35 +01:00
Philipp Stephani
4bb8e2879d * src/json.c (json_parse_error): Fix embarrassing bug. 2017-12-20 18:30:23 +01:00
Robert Pluim
4122d54067 Fix updating scrollbar sizes when scaling is in effect
* src/gtkutil.c (xg_update_scrollbar_pos): Update width of
scrollbar when scaling is in effect.
(xg_update_horizontal_scrollbar_pos): Update scrollbar size
when scaling is in effect.
2017-12-20 09:24:17 +01:00
Philipp Stephani
24efda1d28 Use Jansson's error code support if available
* src/json.c (json_parse_error): Use Jansson's error code support if
available.
2017-12-19 22:48:03 +01:00
Ted Zlatanov
21a212f9e2
Collect GnuTLS extensions and use them to set %DUMBFW if supported
* lisp/net/gnutls.el (gnutls-boot-parameters): Use it to set %DUMBFW
only when it's supported as "ClientHello Padding" (Bug#25061).

* src/gnutls.c (Fgnutls_available_p): Get extension names and
put them in the GnuTLS capabilities, using a hard-coded limit
of 100 since GnuTLS MAX_EXT_TYPES is not exported.
2017-12-19 12:43:56 -05:00
Philipp Stephani
db4f12e93f Allow JSON parser functions to return alists
* src/json.c (Fjson_parse_string, Fjson_parse_buffer): Give these
functions a keyword argument to specify the return type for JSON
objects.
(json_to_lisp): Convert objects to alists if requested.
(json_parse_object_type): New helper function to parse keyword
arguments.

* test/src/json-tests.el (json-parse-string/object): Add a unit test.

* doc/lispref/text.texi (Parsing JSON): Document new functionality.
2017-12-19 18:20:55 +01:00
Philipp Stephani
91031a2cfd ; Add a couple of encoding-related FIXMEs to json.c
* src/json.c (json_make_string, json_build_string, json_encode)
(lisp_to_json_toplevel_1, lisp_to_json): Add FIXMEs for problematic
string error reporting.
2017-12-19 00:15:01 +01:00
Philipp Stephani
205d02c1b5 ; * src/json.c (lisp_to_json): Inline an unnecessary variable. 2017-12-19 00:13:02 +01:00
Philipp Stephani
87bd1d914e ; Add comments about potential future Jansson flags
* src/json.c (Fjson_serialize, Fjson_insert): Add comments about
flags that we might potentially add in the future.
2017-12-19 00:11:40 +01:00
Glenn Morris
8e46d93dcd Merge from origin/emacs-26
28e0261890 * lisp/progmodes/cc-defs.el (c-version): Update to 5.33.1.
ac53084f9b Improve fix for Bug#29712
ffd4771560 * doc/lispref/sequences.texi (Sequence Functions): Improve...
f274cbd185 Avoid reordering of output in 'shr-insert-document'
7890864413 Improve documentation of 'invisible-p'
a1327bbc64 Remove one more check that Vframe_list is non-nil
63b6281fdd Fix off-by-one error in 'css--hex-color'
804b37ca63 Save and restore text-pixel height and width of frames (Bu...
777fe94661 Partially revert "Mention new strictness for &optional, &r...
ad17db7964 * lisp/vc/smerge-mode.el (smerge-refine): Respect font-loc...
5a7d0095a4 * lisp/vc/smerge-mode.el (smerge-refine): Replace obsolete...
e019c35df6 FOR_EACH_FRAME no longer assumes frame-list
d64b88da2f * src/font.c (Ffont_info): Doc fix.  (Bug#29682)
92b2604a7f Modernise message.el face spec syntax
b1efbe6564 Update message.el obsolete face aliases
2494c14e76 ; * lisp/comint.el (comint-terminfo-terminal): Add a :vers...
12ad276d15 Improve documentation of TERM environment variable
8ed529f0f3 Add option to configure comint TERM
889f07c352 Better support utf-8-with-signature and utf-8-hfs in XML/HTML
a2697fac0e * lisp/menu-bar.el (menu-bar-mode): Doc fix.
ffb50eace6 ; * etc/NEWS: Fix last change.
95606af8b0 Fix Bug#29712 in tramp-tests.el
9bf66c6bee Don't run FOR_EACH_FRAME when there's no frame left (Bug#2...
c2a88ec8e8 * lisp/textmodes/tex-mode.el: Ensure uncompiled file is lo...
b178870528 Remember password change for IMAP in Gnus (Bug#29692)
a21dac18bb Add %DUMBFW to the default GnuTLS priority strings
780407cff1 Small fixes prompted by make check-declare
541a60108d Fix some custom groups
e220d6e112 Fix fontification of first declaration within a C++ lambda...
aa66da220c * src/data.c (Fadd_variable_watcher): Doc fix.
f838210b01 Fix misfontification of C++ member initialization list aft...
232c6465ce Fix doc-string of Fbuffer_list
3f9aac68d7 Don't raise an extraneous frame (bug#29696)
e7b1111155 Mention new strictness for &optional, &rest in arglists (B...
4cb8696e47 Don't misfontify "foo ()" inside C++ initialization parent...
ce31e726ad Fixes for defcustoms, prompted by cus-test-opts
aacd1e14fc * lisp/net/newst-backend.el (newsticker--raw-url-list-defa...
7e2f4d3d41 * lisp/htmlfontify.el (hfy-which-etags): Fix it.
52d2a690f6 Add missing :version tags revealed by cusver-check
f5d0360234 Escape column-zero doc parens

# Conflicts:
#	etc/NEWS
2017-12-16 12:18:45 -08:00
Philipp Stephani
da2c441079 Remove two unused variables in macfont.m
* src/macfont.m (macfont_get_glyph_for_character): Remove two unused
variables.
2017-12-16 19:16:01 +01:00
Alan Third
95e7195f0d Silence macOS 10.13 deprecation notices (Bug#29643)
* src/nsfns.m (Fx_display_backing_store):
(Fx_display_save_under): Don't use NSBackingStoreRetained or
NSBackingStoreNonretained on macOS 10.13+.
* src/nsselect.m (symbol_to_nsstring):
(ns_string_to_symbol):
(nxatoms_of_nsselect): Replace NSGeneralPboard with
NSPasteboardNameGeneral.
* src/nsterm.h: #define NSPasteboardNameGeneral to NSGeneralPboard on
GNUstep and macOS < 10.13.
* src/nsterm.m (EmacsView::resetCursorRects):
(EmacsScroller::resetCursorRects): Don't use setOnMouseEntered on
macOS 10.13+.
2017-12-16 16:35:46 +00:00
Eli Zaretskii
7890864413 Improve documentation of 'invisible-p'
* doc/lispref/display.texi (Invisible Text): Document the return
value of 'invisible-p'.

* src/xdisp.c (Finvisible_p): Rename the argument POS.  Doc fix.
(Bug#29721)
2017-12-16 12:15:06 +02:00
Martin Rudalics
a1327bbc64 Remove one more check that Vframe_list is non-nil
* src/dispnew.c (check_glyph_memory): Remove no-longer-needed
check that Vframe_list is non-nil, as FOR_EACH_FRAME no longer
assumes that.
2017-12-16 10:14:29 +01:00
Paul Eggert
e019c35df6 FOR_EACH_FRAME no longer assumes frame-list
This cleans up a recent fix related to Bug#29661.
Suggested by Stefan Monnier in:
https://lists.gnu.org/r/emacs-devel/2017-12/msg00544.html
* src/frame.c (next_frame, prev_frame, delete_frame):
Restore debugging checks that Vframe_list is non-nil,
as FOR_EACH_FRAME no longer has these checks.
(delete_frame): Remove no-longer-needed checks that Vframe_list is
non-nil, as FOR_EACH_FRAME no longer assumes that.
* src/frame.h (FOR_EACH_FRAME): Do not assume Vframe_list is non-nil.
2017-12-15 09:08:27 -08:00
Eli Zaretskii
d64b88da2f * src/font.c (Ffont_info): Doc fix. (Bug#29682) 2017-12-15 12:30:30 +02:00
Martin Rudalics
9bf66c6bee Don't run FOR_EACH_FRAME when there's no frame left (Bug#29961)
This does not fix Bug#29961 but avoids that Emacs segfaults when
trying to shut down because it lost connection to the X server.

* src/dispnew.c (check_glyph_memory):
* src/frame.c (delete_frame): Don't run FOR_EACH_FRAME when
there's no frame left (Bug#29961).
2017-12-15 08:30:09 +01:00
Charles A. Roelli
aa66da220c * src/data.c (Fadd_variable_watcher): Doc fix. 2017-12-14 20:53:35 +01:00
Eli Zaretskii
8e13d3ab1a ; * src/json.c: Convert non-ASCII quotes to ASCII characters. 2017-12-14 19:53:58 +02:00
Martin Rudalics
232c6465ce Fix doc-string of Fbuffer_list
* src/buffer.c (Fbuffer_list): Fix doc-string.
2017-12-14 09:38:06 +01:00
Stefan Monnier
14b9558752 * src/syntax.c (find_defun_start): Use syntax-ppss
(syms_of_syntax): New variable comment-use-syntax-ppss.
2017-12-12 23:03:00 -05:00
Glenn Morris
0beba8d164 Merge from origin/emacs-26
b0369d0536 Import the latest IVD_Sequences.txt
cd53b6399b Fix dired-do-compress when tar doesn't default to stdin (B...
51911dae14 Suppress warnings during elisp completion macroexpansion
a36a090a95 * lisp/progmodes/verilog-mode.el (verilog-mode): Fix typo ...
6a6e8e6e8d Make tramp-interrupt-process more robust
5bcd468a9e Make quail-input-method work when inhibit-read-only is non...
87baf1242e Fix 'fontset-name-p'
d23158777d Fix fontset documentation inconsistencies for bug#29630
a829cb8c8b Remove sentence from child frames section in Elisp manual
ad491c80e4 Avoid crashes in 'font-at' after 'set-fontset-font'
c73d2cdfd7 * lisp/files-x.el (connection-local-set-profile-variables)...
cefca2b8ac Add /etc/ssl/cert.pem to gnutls-trustfiles for macOS
122e7264b8 Fix tool-tip display when display margins are non-zero by ...
e1cc2037a9 Handle hash tables and vectors when reading/writing EIEIO ...
cda219c3df Improve interactive debugging commands in xdisp.c
1056b3cbcd Fix calculation of continuation_pixel_width in display engine
90e20804f5 Improve documentation of 'save-abbrevs'.
14f0230a48 Improve documentation of Dired
161b0e5493 * lisp/bookmark.el (bookmark-alist): Doc fix.  (Bug#29551)
2017-12-12 19:43:33 -08:00
Paul Eggert
8e78d49765 Fix recently-introduced cast typo
* src/alloc.c (SDATA_OF_STRING): Put cast in right spot.
This matters only if GC_CHECK_STRING_BYTES, which is sort
of a coals-to-Newcastle situation if pointer bounds checking
is also enabled.
2017-12-12 15:17:12 -08:00
Paul Eggert
e921f97df9 Port --fcheck-pointer-bounds to --with-wide-int
* src/lisp (XSYMBOL) [__CHKP__ && !USE_LSB_TAG]:
Bypass pointer bounds checking here,
instead of failing the entire build.
(make_lisp_symbol): Improve comment.
2017-12-12 15:17:12 -08:00
Paul Eggert
4295050e11 Narrow pointer bounds when appropriate
This typically occurs in a storage manager, where the caller
is expected to access only the newly-allocated object,
instead of using the returned value to access unrelated
parts of the heap.
* src/alloc.c (allocate_string, allocate_string_data)
(compact_small_strings, find_string_data_in_pure)
(sweep_strings, setup_on_free_list, allocate_vectorlike
(pure_alloc):
* src/bytecode.c (exec_byte_code):
* src/callint.c (Fcall_interactively):
* src/dispnew.c (scrolling):
* src/editfns.c (styled_format):
* src/frame.c (xrdb_get_resource, x_get_resource_string):
* src/fringe.c (Fdefine_fringe_bitmap):
* src/gmalloc.c (malloc, realloc, aligned_alloc):
Narrow pointer bounds when appropriate.
* src/alloc.c (SDATA_OF_STRING):
* src/lisp.h (make_lisp_symbol) [__CHKP__]:
Widen bounds here, though.
* src/bytecode.c, src/callint.c, src/dispnew.c, src/editfns.c:
* src/emacs.c, src/frame.c, src/fringe.c:
Include ptr-bounds.h.
* src/ptr-bounds.h (ptr_bounds_clip): New function.
2017-12-12 15:17:12 -08:00
Paul Eggert
881abfc7fb Port to gcc -fcheck-pointer-bounds
This is a minimal port, just to get Emacs running;
it does not attempt to make the pointer bounds at all tight.
* src/ptr-bounds.h: New file.
* src/alloc.c, src/gmalloc.c: Include it.
* src/alloc.c (live_string_holding, live_cons_holding)
(live_symbol_holding, live_misc_holding, garbage_collect_1)
(sweep_conses, sweep_floats):
* src/gmalloc.c (malloc_initialize_1, _free_internal_nolock)
(_realloc_internal_nolock):
Widen pointer bounds as necessary.
We're in a memory allocator so this is OK.
* src/lisp.h (lisp_h_XSYMBOL, make_lisp_symbol) [__CHKP__]:
Do not convert from pointer to integer and back again, so
that GCC does not lose track of pointer bounds.
(XSYMBOL) [__CHKP__ && !USE_LSB_TAG]: Now a compile-time error.
Although it's possible to support both -fcheck-pointer-bounds and
--with-wide-int, it's more work; keep things simple for now.
(DEFINE_LISP_SYMBOL) [__CHKP__]: Now a no-op, to avoid
trouble with unbounded pointers.
2017-12-12 15:17:12 -08:00
Paul Eggert
244346c744 Reimplement Lisp_Object as pointer-to-incomplete
This makes Lisp_Object values opaque pointers instead of integers,
which helps avoid the same sort of typos that
CHECK_LISP_OBJECT_TYPE helps to avoid, without having to wrap
pointers inside structures.  This also looks forward to supporting
-fcheck-pointer-bounds.
* etc/DEBUG:
* src/.gdbinit (Lisp_Object_Printer.to_string):
Lisp_Object can be a pointer type now.
* src/alloc.c (macro_XPNTR, XPNTR):
* src/emacs-module.c (value_to_lisp_bits, lisp_to_value_bits):
* src/lisp.h (lisp_h_XLI, lisp_h_XIL):
(lisp_h_XUNTAG) [USE_LSB_TAG]:
(XUNTAG) [!USE_LSB_TAG]:
(Lisp_Object, TAG_PTR, make_lisp_symbol):
Support new Lisp_Object implementation as a pointer to an
incomplete type.  Keep pointers pointers, as much as possible.
* src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, XPNTR_OR_SYMBOL_OFFSET):
Remove.  All uses replaced by plain XPNTR.
* src/emacs-module.c: Work around GCC bug 83162.
* src/lisp.h (LISP_WORDS_ARE_POINTERS, lisp_h_XLP, lisp_h_XPL):
(XLP, XPL) [DEFINE_KEY_OPS_AS_MACROS]:
New macros.
(Lisp_Word, untagged_ptr, Lisp_Word_tag): New types.
(XLP, XPL): New inline functions.
(TAG_PTR): Now expands to an initializer, not an expression.
All uses changed.
(TAG_SYMOFFSET, XLI_BUILTIN_LISPSYM): Remove.  All uses removed.
(LISPSYM_INITIALLY): Redo in terms of the new TAG_PTR.
(NIL_IS_ZERO): Redo without XLI_BUILTIN_LISPSYM.
* src/xwidget.c (webkit_javascript_finished_cb): Use XPL
instead of XIL with a non-EMACS_INT arg.
(Fxwidget_webkit_execute_script): Use XLP instead of XLI
followed by two conversions.
2017-12-12 15:17:12 -08:00
Alan Third
45099bb90f Remove ObjC blocks (Bug#23753)
* src/macfont.m (macfont_get_glyph_for_character):
(mac_font_get_glyphs_for_variants): Inline Objective-C blocks.

(cherry picked from commit 4590f1d768)
2017-12-12 20:36:40 +00:00
Eli Zaretskii
b0369d0536 Import the latest IVD_Sequences.txt
* admin/unidata/IVD_Sequences.txt: New version from
http://www.unicode.org/ivd/, the 2017-12-12 version of the Unicode
Ideographic Variation Database.

* src/macuvs.h: Regenerated.
2017-12-12 21:41:23 +02:00
Alan Third
4590f1d768 Remove ObjC blocks (Bug#23753)
* src/macfont.m (macfont_get_glyph_for_character):
(mac_font_get_glyphs_for_variants): Inline Objective-C blocks.
2017-12-12 17:15:26 +00:00
Eli Zaretskii
2b8a1b7692 Support dynamic loading of libjansson on MS-Windows
* src/json.c [WINDOWSNT]: Define fn_* function pointers to jansson
functions.
(json_delete) [WINDOWSNT]: A wrapper around fn_json_delete, needed
by json_decref.
(init_json_functions) [WINDOWSNT]: New function.
(Fjson_serialize, Fjson_insert, Fjson_parse_string)
(Fjson_parse_buffer) [WINDOWSNT]: Call init_json_functions if
needed, and record JSON in Vlibrary_cache.
* src/emacs.c (main): Don't call init_json on WINDOWSNT.
* src/w32fns.c (syms_of_w32fns): DEFSYM "json".

* lisp/term/w32-win.el (dynamic-library-alist): Add JSON DLL to
the list.

* configure.ac (HAVE_JSON): Empty JSON_LIBS for MinGW.

* nt/INSTALL.W64:
* nt/INSTALL: Add information about libjansson.
2017-12-10 18:36:37 +02:00
Philipp Stephani
ab203e36d5 Implement native JSON support using Jansson
* configure.ac: New option --with-json.

* src/json.c (Fjson_serialize, Fjson_insert, Fjson_parse_string)
(Fjson_parse_buffer): New defuns.
(json_malloc, json_free, json_has_prefix, json_has_suffix)
(json_make_string, json_build_string, json_encode)
(json_out_of_memory, json_parse_error)
(json_release_object, check_string_without_embedded_nulls, json_check)
(lisp_to_json, lisp_to_json_toplevel, lisp_to_json_toplevel_1)
(json_insert, json_insert_callback, json_to_lisp)
(json_read_buffer_callback, Fjson_parse_buffer, define_error): New
helper functions.
(init_json, syms_of_json): New file.

* src/lisp.h: Declaration for init_json and syms_of_json.

* src/emacs.c (main): Enable JSON functions.

* src/eval.c (internal_catch_all, internal_catch_all_1): New helper
functions to catch all signals.
(syms_of_eval): Add uninterned symbol to signify out of memory.

* src/Makefile.in (JSON_LIBS, JSON_CFLAGS, JSON_OBJ, EMACS_CFLAGS)
(base_obj, LIBES): Compile json.c if --with-json is enabled.

* test/src/json-tests.el (json-serialize/roundtrip)
(json-serialize/object, json-parse-string/object)
(json-parse-string/string, json-serialize/string)
(json-parse-string/incomplete, json-parse-string/trailing)
(json-parse-buffer/incomplete, json-parse-buffer/trailing): New unit
tests.

* doc/lispref/text.texi (Parsing JSON): New manual section.
2017-12-10 13:49:08 +01:00
Eli Zaretskii
ad491c80e4 Avoid crashes in 'font-at' after 'set-fontset-font'
* src/fontset.c (free_realized_fontsets): Call
recompute_basic_faces, so that the basic faces are available to
any Lisp that calls this function, e.g. via set-fontset-font.
(Bug#29632)
2017-12-10 10:42:34 +02:00
Philipp Stephani
8b8197235f Raise an error when detecting old-style backquotes.
They have been deprecated for a decade now.

* src/lread.c (Fload): Don't use record_unwind_protect to warn about
old-style backquotes any more.  They now generate a hard error.
(read1): Signal an error when detecting old-style backquotes.  Remove
unused label.
(syms_of_lread): Remove unused internal variable
'lread--old-style-backquotes'.
(load_error_old_style_backquotes): Rename from
'load_warn_oldstyle_backquotes'.  Signal an error.

* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Remove check
from byte compiler.  It isn't triggered any more.

* test/src/lread-tests.el (lread-tests--old-style-backquotes): Adapt
unit test.

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--old-style-backquotes)
(bytecomp-tests-function-put): Adapt unit tests.

* etc/NEWS: Document change.
2017-12-09 21:24:05 +01:00
Eli Zaretskii
122e7264b8 Fix tool-tip display when display margins are non-zero by default
* src/buffer.h (bset_left_margin_cols, bset_right_margin_cols):
New inline functions.
* src/xfns.c (Fx_show_tip):
* src/w32fns.c (Fx_show_tip): Force display margins of the tip
buffer to zero, as it will be displayed in a pseudo-window, which
doesn't support display margins.  (Bug#29627)
2017-12-09 22:06:19 +02:00
Eli Zaretskii
cda219c3df Improve interactive debugging commands in xdisp.c
* src/xdisp.c (Fdump_glyph_row, Fdump_tool_bar_row): Allow to
specify ROW via prefix argument.  Fix the doc strings.
2017-12-09 15:21:21 +02:00
Eli Zaretskii
1056b3cbcd Fix calculation of continuation_pixel_width in display engine
* src/xdisp.c (display_line): Remove incorrect increment of
it->continuation_pixel_width when word-wrap is used.  (Bug#29594)
2017-12-09 14:45:31 +02:00
Michael Albinus
0667d7a160 Merge from origin/emacs-26
5381c70b7a In windows.texi mention special splitting behavior of side...
46d62b9f36 * lisp/gnus/gnus-group.el (gnus-group-mode-map): Bind [fol...
1ef1dbdbc5 Avoid compilation warning in xterm.c
5cf3c26f2d * README: Document all the top-level directories.  (Bug#29...
e9ea2065a8 Don't enable erc modules on simply loading erc.el
2017-12-09 10:13:02 +01:00
Paul Eggert
7367ea4fc7 Fix core dump from (format "%#08x" n) patch
Problem reported by Glenn Morris (Bug#29609#13).
* src/editfns.c (styled_format): Null-terminate output,
as later code now expects this.
2017-12-08 13:30:25 -08:00
Paul Eggert
47423f0603 Fix zero-padding bug with (format "%#08x" n)
Problem reported by Gustaf Waldemarson (Bug#29609).
* src/editfns.c (styled_format):
Put zero padding after a leading "0x", not before.
* test/src/editfns-tests.el (format-sharp-0-x): New test.
2017-12-07 18:08:56 -08:00
Eli Zaretskii
1ef1dbdbc5 Avoid compilation warning in xterm.c
* src/xterm.c (x_draw_underwave): Move the declaration of
'thickness' to the non-USE_CAIRO branch, to avoid compiler
warning.  (Bug#29567)
2017-12-04 21:59:28 +02:00
Eli Zaretskii
42ba2a2e1f Fix an omission in lookup_basic_face
* src/xfaces.c (lookup_basic_face): Handle 'vertical-border' face
as well.  (Bug#29557)
2017-12-04 17:43:35 +02:00
Paul Eggert
a597969f13 allocate_vectorlike minor cleanup
* src/alloc.c (allocate_vectorlike): Move a bit of code out of the
critical section.  Although this doesn’t really help performance,
it cleans up the code a bit and should make it easier to add
pointer bounds checking.
2017-12-03 18:18:02 -08:00
Paul Eggert
c54718e0bb Omit exprintf if modules but no X
* src/doprnt.c (exprintf): Do not define if HAVE_MODULES &&
!(have_X_WINDOWS || USE_X_TOOLKIT), as the modules code no longer
uses exprintf.
2017-12-03 18:18:02 -08:00
Paul Eggert
1dcf8b5ec5 Pacify GCC on Ubuntu 17.10 x86-64
* src/xfns.c (x_real_pos_and_offsets): Pull out parent frame
into a local, so that GCC doesn't warn about dereferencing
a possibly-null pointer.
2017-12-03 18:18:01 -08:00
Alan Third
e4f2061ebc Add image resizing and rotation to NS port
* lisp/image.el (image--get-imagemagick-and-warn): Bypass imagemagick
check when using NS.
* src/nsimage.m (ns_load_image): Add rotation and resizing
functionality. Move the getMetaData call to before the resize/rotation
so it returns correct metadata.
(EmacsImage::setSizeFromSpec, EmacsImage::rotate): New functions.
* src/nsterm.h (EmacsImage): Add new function prototypes.
(NSCompositingOperationCopy): Add define to older equivalent for
GNUstep and pre-10.12 macOS.
* configure.ac: Don't use libjpeg on Cocoa.
2017-12-03 22:41:05 +00:00