<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/src, branch fix/htmlfontify-21990</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>Prefer GnuTLS when acquiring random seed</title>
<updated>2016-01-17T20:13:49+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2016-01-17T20:12:08+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=05e8148a24ebe51fbe758dd16265e8fb81f85953'/>
<id>05e8148a24ebe51fbe758dd16265e8fb81f85953</id>
<content type='text'>
This attempts to improve on the fix for Bug#22202.
* configure.ac (HAVE_DEV_URANDOM): Remove.
Check /dev/urandom existence at run time, not at build time,
since the device could exist in the former but not the latter.
* src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
(gnutls_rnd) [GNUTLS_VERSION_NUMBER &lt; 0x020c00]: New fallback macro.
(random_seed): New typedef.
(set_random_seed): New static function.
(seed_random): Use them.
(init_random): Use random_seed instead of uintmax_t, so as to
not consume more entropy than needed.  Prefer gnutls_rnd if it
works; this avoids a redundant open of /dev/urandom on
GNU/Linux with modern GnuTLS.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This attempts to improve on the fix for Bug#22202.
* configure.ac (HAVE_DEV_URANDOM): Remove.
Check /dev/urandom existence at run time, not at build time,
since the device could exist in the former but not the latter.
* src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
(gnutls_rnd) [GNUTLS_VERSION_NUMBER &lt; 0x020c00]: New fallback macro.
(random_seed): New typedef.
(set_random_seed): New static function.
(seed_random): Use them.
(init_random): Use random_seed instead of uintmax_t, so as to
not consume more entropy than needed.  Prefer gnutls_rnd if it
works; this avoids a redundant open of /dev/urandom on
GNU/Linux with modern GnuTLS.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix incompatbilities with MS-Windows 2000 and older</title>
<updated>2016-01-16T09:46:14+00:00</updated>
<author>
<name>Jussi Lahdenniemi</name>
</author>
<published>2016-01-16T09:46:14+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=86e45139698fe773ffb4efbe59387f90201b80c8'/>
<id>86e45139698fe773ffb4efbe59387f90201b80c8</id>
<content type='text'>
* src/w32.c &lt;multiByteToWideCharFlags&gt;: New global variable.
(filename_to_utf16, filename_from_ansi, check_windows_init_file):
Use it instead of the literal MB_ERR_INVALID_CHARS.
(maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
appropriate for the underlying OS version.  For details, see
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
* src/w32.h: Declare multiByteToWideCharFlags.
* src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
(add_tray_notification): Use multiByteToWideCharFlags instead of
the literal MB_ERR_INVALID_CHARS.
(_resetstkoflw_proc): New typedef.
(w32_reset_stack_overflow_guard): Call _resetstkoflw via a
pointer, as this function is absent in msvcrt.dll shipped with W2K
and older systems.

Copyright-paperwork-exempt: yes
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/w32.c &lt;multiByteToWideCharFlags&gt;: New global variable.
(filename_to_utf16, filename_from_ansi, check_windows_init_file):
Use it instead of the literal MB_ERR_INVALID_CHARS.
(maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
appropriate for the underlying OS version.  For details, see
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
* src/w32.h: Declare multiByteToWideCharFlags.
* src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
(add_tray_notification): Use multiByteToWideCharFlags instead of
the literal MB_ERR_INVALID_CHARS.
(_resetstkoflw_proc): New typedef.
(w32_reset_stack_overflow_guard): Call _resetstkoflw via a
pointer, as this function is absent in msvcrt.dll shipped with W2K
and older systems.

Copyright-paperwork-exempt: yes
</pre>
</div>
</content>
</entry>
<entry>
<title>Ensure 8-byte aligned memory allocation on MS-Windows 9X</title>
<updated>2016-01-16T09:11:12+00:00</updated>
<author>
<name>Jussi Lahdenniemi</name>
</author>
<published>2016-01-16T09:11:12+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=15c23aaf8368215613b0ffd02fe3bb742935f12e'/>
<id>15c23aaf8368215613b0ffd02fe3bb742935f12e</id>
<content type='text'>
* src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
(malloc_after_dump_9x, realloc_after_dump_9x)
(free_after_dump_9x): New functions.  (Bug#22379)  See also
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
for more details about the original problem.

* nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
(free_after_dump_9x): Add prototypes.

Copyright-paperwork-exempt: yes
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
(malloc_after_dump_9x, realloc_after_dump_9x)
(free_after_dump_9x): New functions.  (Bug#22379)  See also
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
for more details about the original problem.

* nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
(free_after_dump_9x): Add prototypes.

Copyright-paperwork-exempt: yes
</pre>
</div>
</content>
</entry>
<entry>
<title>Ensure positive number of glyphs for margins of positive width</title>
<updated>2016-01-15T15:36:47+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2016-01-15T15:36:47+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=740849fe986b62a839bce4bbf67d0036fc1be0b9'/>
<id>740849fe986b62a839bce4bbf67d0036fc1be0b9</id>
<content type='text'>
* src/dispnew.c (margin_glyphs_to_reserve): Always return a
positive value when a non-zero width of the marginal area was
requested.  (Bug#22356)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/dispnew.c (margin_glyphs_to_reserve): Always return a
positive value when a non-zero width of the marginal area was
requested.  (Bug#22356)
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix crashes when mini-window has non-zero margins</title>
<updated>2016-01-15T15:07:38+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2016-01-15T15:07:38+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=aa636c8465b03c09249dccd68fca3d1df04eaa2c'/>
<id>aa636c8465b03c09249dccd68fca3d1df04eaa2c</id>
<content type='text'>
* src/window.c (resize_frame_windows): Use 'new_size' to set
minibuffer window's 'total_cols' value, as 'size' might be in
pixels.  (Bug#22356)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/window.c (resize_frame_windows): Use 'new_size' to set
minibuffer window's 'total_cols' value, as 'size' might be in
pixels.  (Bug#22356)
</pre>
</div>
</content>
</entry>
<entry>
<title>Make 'random' seeds cryptographically secure if possible</title>
<updated>2016-01-15T09:47:55+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2016-01-15T09:47:55+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=3ffe81e245d854a694ae1734f1b6a995bdc5e724'/>
<id>3ffe81e245d854a694ae1734f1b6a995bdc5e724</id>
<content type='text'>
* configure.ac: Check for "/dev/urandom".

* src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
for the seed from "/dev/urandom".
[WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
* src/fns.c (Frandom): Update the doc string to indicate that
system entropy is used when available.
* src/w32.c: Include wincrypt.h.
(w32_init_crypt_random, w32_init_random): New functions, use the
CryptGenRandom API.
(globals_of_w32): Initialize w32_crypto_hprov handle to zero.
* src/w32.h (w32_init_random): Add prototype.

* doc/lispref/numbers.texi (Random Numbers): Document more details
about 't' as the argument to 'random'.

* etc/NEWS: Mention that '(random t)' now uses a cryptographically
strong seed if possible.

(Bug#22202)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* configure.ac: Check for "/dev/urandom".

* src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
for the seed from "/dev/urandom".
[WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
* src/fns.c (Frandom): Update the doc string to indicate that
system entropy is used when available.
* src/w32.c: Include wincrypt.h.
(w32_init_crypt_random, w32_init_random): New functions, use the
CryptGenRandom API.
(globals_of_w32): Initialize w32_crypto_hprov handle to zero.
* src/w32.h (w32_init_random): Add prototype.

* doc/lispref/numbers.texi (Random Numbers): Document more details
about 't' as the argument to 'random'.

* etc/NEWS: Mention that '(random t)' now uses a cryptographically
strong seed if possible.

(Bug#22202)
</pre>
</div>
</content>
</entry>
<entry>
<title>* src/buffer.c (syms_of_buffer) &lt;major-mode&gt;: Doc fix.</title>
<updated>2016-01-13T00:01:12+00:00</updated>
<author>
<name>Glenn Morris</name>
</author>
<published>2016-01-13T00:01:12+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=2fac775a402b859b1d0bcc7683129ba7c6c13673'/>
<id>2fac775a402b859b1d0bcc7683129ba7c6c13673</id>
<content type='text'>
Remove comments that do not apply since 2005-08-09.  (Bug#22349)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove comments that do not apply since 2005-08-09.  (Bug#22349)
</pre>
</div>
</content>
</entry>
<entry>
<title>Make piping to subprocesses more robust on MS-Windows</title>
<updated>2016-01-12T16:41:58+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2016-01-12T16:41:58+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=58a622d473112f8ff5b4bdb3e49bc6573dfd3404'/>
<id>58a622d473112f8ff5b4bdb3e49bc6573dfd3404</id>
<content type='text'>
* src/w32.c (sys_write): Don't write to a pipe more stuff than its
buffer can hold.  Don't return -1 if something has been written to
the pipe.  Zero out 'errno' before calling '_write', to avoid
returning a stale value.  (Bug#22344)
* src/w32proc.c (syms_of_ntproc) &lt;w32-pipe-buffer-size&gt;: New variable.
* src/w32.c (pipe2): Use it to request a user-defined size for the
pipe being created.

* etc/NEWS: Mention 'w32-pipe-buffer-size'.

* doc/emacs/msdos.texi (Windows Processes): Document
'w32-pipe-buffer-size'.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/w32.c (sys_write): Don't write to a pipe more stuff than its
buffer can hold.  Don't return -1 if something has been written to
the pipe.  Zero out 'errno' before calling '_write', to avoid
returning a stale value.  (Bug#22344)
* src/w32proc.c (syms_of_ntproc) &lt;w32-pipe-buffer-size&gt;: New variable.
* src/w32.c (pipe2): Use it to request a user-defined size for the
pipe being created.

* etc/NEWS: Mention 'w32-pipe-buffer-size'.

* doc/emacs/msdos.texi (Windows Processes): Document
'w32-pipe-buffer-size'.
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid an infloop when we run out of memory</title>
<updated>2016-01-11T16:05:40+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2016-01-11T16:05:40+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=36b953947ee2ee0411139bd4ad7dcffdcc403036'/>
<id>36b953947ee2ee0411139bd4ad7dcffdcc403036</id>
<content type='text'>
* src/alloc.c (garbage_collect_1): Don't bother saving and
restoring the echo-area message if we are GC'ing after running out
of memory.  This avoids an infloop due to repeated attempts to
allocate memory for the cons cell needed to save the message,
which signals the memory-full error, which attempts to save the
echo-area message, which signals memory-full again, etc.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/alloc.c (garbage_collect_1): Don't bother saving and
restoring the echo-area message if we are GC'ing after running out
of memory.  This avoids an infloop due to repeated attempts to
allocate memory for the cons cell needed to save the message,
which signals the memory-full error, which attempts to save the
echo-area message, which signals memory-full again, etc.
</pre>
</div>
</content>
</entry>
<entry>
<title>Avoid unnecessary failures of auto-saving after fatal error</title>
<updated>2016-01-11T16:00:13+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2016-01-11T16:00:13+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=200675299e24139ccce444a7ca5d59a2aed2891c'/>
<id>200675299e24139ccce444a7ca5d59a2aed2891c</id>
<content type='text'>
* src/w32.c (map_w32_filename): Avoid non-trivial system calls for
the benefit of FAT volumes if we are called as part of shutting
down due to a fatal error, which probably means we are trying to
auto-save the session.
* src/lread.c (check_obarray): Don't bother making the obarray
valid if we are shutting down due to a fatal error.  This avoids
interfering with auto-saving the crashed session.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/w32.c (map_w32_filename): Avoid non-trivial system calls for
the benefit of FAT volumes if we are called as part of shutting
down due to a fatal error, which probably means we are trying to
auto-save the session.
* src/lread.c (check_obarray): Don't bother making the obarray
valid if we are shutting down due to a fatal error.  This avoids
interfering with auto-saving the crashed session.
</pre>
</div>
</content>
</entry>
</feed>
