|
fa6f0000
|
2011-05-05T19:03:57
|
|
signal: Define sighandler_t.
* lib/signal.in.h (sighandler_t): New type.
* m4/signal_h.m4 (gl_SIGNAL_H): Require AC_USE_SYSTEM_EXTENSIONS. Test
whether sighandler_t is defined.
(gl_SIGNAL_H_DEFAULTS): Initialize HAVE_SIGHANDLER_T.
* modules/signal (Depends-on): Add extensions.
(Makefile.am): Substitute HAVE_SIGHANDLER_T.
* doc/posix-headers/signal.texi: Mention the problem with sighandler_t.
Suggested by Markus Steinborn <gnugv_maintainer@yahoo.de>.
|
|
bcbcf0c5
|
2011-05-02T15:00:50
|
|
fflush: also replace fclose when fixing fflush
This fixes the fclose failures detected in the previous patch,
but only when the GPL fflush module is also in use. That is
because the need for behavior of resetting seekable input streams
is much less common, and the fix more complex. The LGPLv2+ test
for fclose() in isolation is relaxed to pass if fflush is not
being replaced to cater to input streams.
* modules/fflush (Depends-on): Add fclose.
* m4/fflush.m4 (gl_FUNC_FFLUSH): Also replace fclose.
* lib/fclose.c (rpl_fclose): Don't cause spurious failures on
memstreams with no backing fd.
* doc/posix-functions/fclose.texi (fclose): Document the use of
fflush module to fix the bug.
* tests/test-fclose.c (main): Relax test when fclose is used in
isolation.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
001e7d63
|
2011-05-02T11:41:12
|
|
fclose: reduce dependencies
In an LGPLv2+ project, the last change to fclose dragged in
inappropriate modules.
* modules/fclose (Depends-on): Switch from fflush/fseeko to
simpler lseek.
* lib/fclose.c (rpl_fclose): Likewise.
Reported by Simon Josefsson.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
380f4f7a
|
2011-05-01T11:58:53
|
|
Revert "netdb: Fix invalid C syntax." commit from 2011-04-30.
|
|
096d7e1c
|
2011-04-30T15:40:00
|
|
fclose: don't fail on non-seekable input stream
On mingw, for a project that uses both sockets and streams,
then fclose(stdin) when getting input from a terminal or pipe
was spuriously failing.
* modules/fclose (Depends-on): Add freading, fflush, fseeko.
* lib/fclose.c (rpl_fclose): Skip fflush for non-seekable input,
since fflush is allowed to fail in that case.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
a7982f61
|
2011-04-30T17:22:37
|
|
dup3: cleanup
* lib/dup3.c: Remove old code, leftover from 2009-12-16.
|
|
0576d587
|
2011-04-30T15:00:45
|
|
netdb: Make it work in C++ mode.
* lib/netdb.in.h (struct addrinfo): In C++, define as a C struct.
(getaddrinfo, freeaddrinfo, getnameinfo): Use macros from c++defs
module.
* m4/netdb_h.m4 (gl_NETDB_MODULE_INDICATOR): Invoke
gl_MODULE_INDICATOR_FOR_TESTS.
* modules/netdb-tests (Depends-on): Add netdb-c++-tests.
* modules/netdb-c++-tests: New file.
* tests/test-netdb-c++.cc: New file.
|
|
89d10938
|
2011-04-30T14:05:52
|
|
passfd: Add comments.
* lib/passfd.c: Add comments about platforms.
|
|
241bef98
|
2011-04-30T13:54:47
|
|
sys_uio: Make <sys/uio.h> self-contained.
* lib/sys_uio.in.h: Include <sys/types.h> before <sys/uio.h>.
* doc/posix-headers/sys_uio.texi: Mention the OpenBSD problem.
|
|
95bbafdb
|
2011-04-30T13:38:43
|
|
sys_socket: Ensure 'struct iovec' definition.
* lib/sys_socket.in.h: Include <sys/uio.h> also on platforms that have
<sys/socket.h>.
* doc/posix-headers/sys_socket.texi: Mention the OpenBSD problem.
|
|
c9b4d370
|
2011-04-30T13:19:55
|
|
sys_uio: Protect definition of 'struct iovec'.
* lib/sys_uio.in.h (struct iovec): Avoid redefinition. In C++, define
it as a C struct.
|
|
12a4891e
|
2011-04-30T11:54:12
|
|
netdb: Fix invalid C syntax.
* lib/netdb.in.h (AI_ADDRCONFIG): Fix comment syntax.
|
|
aaf62c6a
|
2011-04-28T17:25:49
|
|
quotearg: avoid uninitialized variable use
Coverity correctly deduced:
Error: UNINIT:
m4-1.4.16/lib/quotearg.c:171: var_decl: Declaring variable "o" without initializer.
m4-1.4.16/lib/quotearg.c:175: uninit_use: Using uninitialized value "o": field "o".right_quote is uninitialized.
When custom_quoting_style was introduced in commit 12247f77,
this method was not updated, and any caller that passed
the new enum value to any of the existing quotearg_*style
functions could trigger a crash from the uninitialized memory.
That was already documented as unspecified behavior, though,
so changing to an abort makes it easier to spot bad code that
passes the wrong enum value, rather than waiting for the
eventual bad memory dereference later on.
Most callers of quotearg_*style were using quoting_style_args
and quoting_style_vals to map strings to particular enum
values, and custom_quoting_style is (intentionally) not covered
by these arrays, so the pre-patch bug/post-patch abort are not
possible with those callers.
* lib/quotearg.c (quoting_options_from_style): Initialize
remaining fields, and ensure that custom styles are only used via
quoting_options rather than quoting_style.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
3864a297
|
2011-04-29T14:09:15
|
|
netdb: fix gai_strerror replacements
* lib/netdb.in.h: Add _GL_FUNCDECL_RPL definitions.
* modules/netdb: Substitute it.
|
|
74175b90
|
2011-04-28T16:46:16
|
|
getaddrinfo: fix gai_strerror signature
Several platforms declare gai_strerror to return char* rather than
const char*. Worse, on mingw, if UNICODE is defined, it is defined
to return WCHAR*, which means the result is in unicode but an
application expecting bytes for characters will only see a one-byte
answer.
* m4/getaddrinfo.m4 (gl_GETADDRINFO): Detect broken signatures,
and work around mingw with UNICODE defined.
(gl_PREREQ_GETADDRINFO): Drop redundant decl check.
* m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Add witness.
* modules/netdb (Makefile.am): Substitute it.
* lib/netdb.in.h (gai_strerror): Declare replacement.
* lib/gai_strerror.c (rpl_gai_strerror): Fix signature.
* doc/posix-functions/gai_strerror.texi (gai_strerror): Document
the fix.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
7aa5e8dd
|
2011-04-28T15:24:46
|
|
getsockopt: avoid compiler warning
getsockopt.c: In function 'rpl_getsockopt':
getsockopt.c:51:7: warning: passing argument 4 of 'getsockopt' from
incompatible pointer type
c:\dev\msys_setup\mingw\bin\../lib/gcc/mingw32/4.5.0/../../../../include/winsock2.h:543:32:
note: expected 'char *' but argument is of type 'int *'
A simple cast works around the mingw signature lameness. If only
they had picked void* instead of char*, like POSIX says...
* lib/getsockopt.c (rpl_getsockopt): Add a cast for mingw.
Reported by Matthias Bolte.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
83b1d641
|
2011-04-27T16:23:45
|
|
hash, mgetgroups: drop xalloc dependency
Rely on the new xalloc-oversized module to avoid requiring
xalloc-die for functions documented as returning NULL on
potential allocation overflow.
* lib/hash.c (includes): Adjust includes.
* lib/mgetgroups.c (includes): Likewise.
(xgetgroups): Move...
* lib/xgetgroups.c: ...to new file.
* modules/xgetgroups: New file, split from...
* modules/mgetgroups: ...here.
(Depends-on): Add xalloc-oversized.
* modules/hash (Depends-on): Likewise.
* modules/hash-tests (Depends-on): Drop xalloc.
(test_hash_LDADD): Drop unused library.
* tests/test-hash.c (main): Break xalloc dependency.
(includes): Drop unused include.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
bf18c9b4
|
2011-04-27T15:54:30
|
|
xalloc-oversized: new module
Due to inline functions, mere inclusion of xalloc.h can result
in a link dependency on xalloc_die() on some platforms. However,
there are several modules that want to use just xalloc_oversized
in order to short-circuit the potential to call xalloc_die.
Splitting the macro into a new header and module makes this easy.
* modules/xalloc-oversized: New module.
* modules/xalloc (Depends-on): Add it.
* lib/xalloc.h (xalloc_oversized): Move...
* lib/xalloc-oversized.h: ...into new file.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
7cbc494f
|
2011-04-27T15:41:54
|
|
utimecmp: drop dependency on xmalloc
utimecmp's only use of malloc was for a cache; we can always bypass
the cache in low memory, and thus avoid dragging in xalloc-die.
* lib/utimecmp.c (utimecmp): Work even if hash table cache fails
due to memory pressure.
* modules/utimecmp (Depends-on): Drop xalloc.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
8585ce2f
|
2011-04-27T20:40:21
|
|
getcwd: fix mingw bugs
On mingw, getcwd(NULL,1) succeeds, even though glibc documents that
with a non-zero size, the allocation will not exceed that many bytes.
On mingw, getcwd has the wrong signature. However, we don't have
to check for this if anything else triggers the replacement.
Also, fix a type bug that crept into the original getcwd-lgpl commit.
* m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Detect one mingw bug.
* doc/posix-functions/getcwd.texi (getcwd): Document the problems.
* lib/getcwd-lgpl.c (rpl_getcwd): Fix return type.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
2cd4d6d9
|
2011-04-28T01:26:12
|
|
Typo in comment.
|
|
a4e3a1d3
|
2011-04-28T00:06:48
|
|
mkstemps: Ensure declaration on MacOS X 10.5.
* lib/stdlib.in.h: Include <unistd.h> when mkstemps is requested.
* doc/glibc-functions/mkstemps.texi: Document header file problem on
MacOS X.
|
|
5ea8bedd
|
2011-04-27T23:28:48
|
|
clean-temp: Clarify what it does.
* lib/clean-temp.h: Add more comments.
* doc/posix-functions/mkstemp.texi: Tweak reference to 'clean-temp'
module.
* doc/glibc-functions/mkostemp.texi: Mention 'clean-temp' here too.
* doc/glibc-functions/mkstemps.texi: Likewise.
* doc/glibc-functions/mkostemps.texi: Likewise.
|
|
825499de
|
2011-04-26T15:58:03
|
|
fchdir: avoid extra chdir and fix test
On Linux, with a forced ac_cv_func_fchdir=no, the test failed
because dup2 was not replaced, all because the shell variable
ac_cv_func_dup2 had not been set yet.
Meanwhile, computing the canonical pathname of a directory on
mingw was rather expensive -- multiple chdir()! -- but nothing
cared whether the name was canonical, just that it was absolute.
* modules/fchdir (Depends-on): Add dosname, filenamecat-lgpl,
getcwd-lgpl.
* lib/fchdir.c (get_name): Any absolute name will do; it does not
have to be canonical.
* m4/dup2.m4 (gl_REPLACE_DUP2): Ensure dup2 is replaced.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
0c631b51
|
2011-04-26T15:07:07
|
|
save-cwd: reduce default dependency
save-cwd generally needs only a working fchdir or a working
getcwd(NULL,0). If you are not worried about directories whose
absolute name is longer than PATH_MAX, then reducing the default
dependencies reduces the bulk for this module.
However, there are cases where neither function works on Linux
(an unreadable but searchable directory can be opened by O_SEARCH,
except that Linux doesn't implement that yet; and Linux getcwd()
has issues with long absolute names which glibc does not work
around but which the full-blown getcwd module does). So someone
desiring a truly robust solution needs to import the 'getcwd'
module at the same time as 'save-cwd'.
* modules/save-cwd (Depends-on): Use getcwd-lgpl.
* lib/save-cwd.c: Update comments.
* NEWS: Document the semantic change.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
043be67a
|
2011-04-26T14:40:58
|
|
getcwd-lgpl: new module
For programs that aren't worried about being invoked from an
current working directory longer than PATH_MAX (perhaps because
the program always does chdir to a sane location first), the
getcwd module is overkill, given that all modern portability
targets have a getcwd that works on short names.
* modules/getcwd-lgpl: New module.
* lib/getcwd-lgpl.c: New file.
* doc/posix-functions/getcwd.texi (getcwd): Document it.
* MODULES.html.sh (lacking POSIX:2008): Likewise.
* modules/getcwd (configure.ac): Set C witness.
* m4/getcwd.m4 (gl_FUNC_GETCWD_LGPL): New macro.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
722fc0ac
|
2011-04-27T09:52:00
|
|
passfd: avoid compiler warning
Detected on Fedora 13 with -Wshadow.
* lib/passfd.c (sendfd, recvfd): Avoid shadowing names.
Reported by Laine Stump.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
ca1502f7
|
2011-04-27T14:30:31
|
|
mkstemp: mention clean-temp module
* lib/mkstemp.c: Add comment.
* doc/posix-functions/mkstemp.texi (mkstemp): Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
6950d658
|
2011-04-25T17:33:42
|
|
strtoimax, strtoumax: simplify, port to HP-UX 11.00 64-bit
This supports apps that need pointers to strtoimax and strtoumax,
and ports to HP-UX 11.00 64.bit, which has macros that expand to
nonexistent functions. See
<http://lists.gnu.org/archive/html/bug-gnulib/2011-04/msg00241.html>
et seq.
* lib/inttypes.in.h (strtoimax, strtoumax): #undef before declaring.
* m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Don't check whether it's
a macro.
* m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
|
|
6829a6c0
|
2011-04-25T10:38:33
|
|
Revert "use _GL_ATTRIBUTE_CONST and _GL_ATTRIBUTE_PURE"
This reverts commit 349d7fe0e307d59d508b3579317ee8d4eacfeb9c.
Revert accidentally-pushed patch. Not yet ready.
|
|
349d7fe0
|
2011-04-24T19:02:10
|
|
use _GL_ATTRIBUTE_CONST and _GL_ATTRIBUTE_PURE
|
|
46380c37
|
2011-04-22T00:45:04
|
|
strtol: remove dependency on wchar
* lib/strtol.c: Include <wchar.h> only if USE_WIDE_CHAR is defined.
* modules/strtol (Depends-on): Remove wchar.
|
|
e5535531
|
2011-04-21T11:48:22
|
|
passfd: speed up configure and drop unused code
Ultimately, it would be nice to provide a sendmsg and recvmsg module,
and have those provide a replacement struct msghdr and silently
convert msg_accrights into the replacement struct's msg_control, when
targeting older BSD. But until that point in time, this is a nice
cleanup.
SCM_RIGHTS really only works on Unix sockets; however, there is
nothing in passfd.c that needs to be hard-coded to this (rather,
the hard-coding of the address family is done externally when
the socket or socketpair is created).
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Rename...
* m4/passfd.m4 (gl_PASSFD): ...to something more fitting of
its use. Drop test for setting unused HAVE_UNIXSOCKET_SCM_RIGHTS.
Instead of probing at configure for unix_scm_rights_bsd44_way,
instead probe for CMSG_FIRSTHDR at compile time. Simplify BSD 4.3
check to a struct member probe.
* lib/passfd.c (includes): Nothing here requires <sys/un.h>.
(sendfd, recvfd): Update preprocessor checks.
* modules/passfd (Files): Reflect rename, and drop unused file.
(Depends-on): Drop unused dependency.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
06d76f63
|
2011-04-21T07:16:20
|
|
passfd: allow compilation on mingw
The passfd module now skips on mingw, rather than failing to compile.
It may be nice to add a sendmsg and recvmsg module in the future,
but for now passfd is the only client that cares.
* modules/sys_socket (Depends-on): Add sys_uio.
* lib/sys_socket.in.h [!@HAVE_SYS_SOCKET_H@]: Use it for struct
iovec and a minimal struct msghdr.
* tests/test-sys_socket.c (main): Enhance test.
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Detect recvmsg/sendmsg.
* lib/passfd.c (include): Drop <sys/uio.h>; <sys/sockets.h> is
guaranteed to provide what we need.
(sendmsg, recvmsg): Declare fallbacks if we lack sendmsg.
* modules/passfd-tests (Depends-on): Add sys_wait.
* tests/test-passfd.c (main): Skip test on mingw, for now.
* doc/posix-headers/sys_socket.texi (sys/socket.h): Document the
partial 'struct msghdr' implementation.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
753425d5
|
2011-04-21T08:51:12
|
|
sys_uio: new module
For now, just provide the types used by sys/socket. We could
add readv() and writev() later, if desired.
* modules/sys_uio: New module.
* modules/sys_uio-tests: Likewise.
* lib/sys_uio.in.h: New file.
* m4/sys_uio_h.m4: Likewise.
* tests/test-sys_uio.c: Likewise.
* doc/posix-headers/sys_uio.texi (sys/uio.h): Document it.
* MODULES.html.sh (systems lacking POSIX:2008): Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
6110d07d
|
2011-04-18T02:34:47
|
|
ioctl: Remove link dependency on native Windows.
* lib/fd-hook.h: Renamed from lib/close-hook.h.
(gl_close_fn, gl_ioctl_fn): New types.
(struct fd_hook): Renamed from struct close_hook. Change type of
private_close_fn field. Add private_ioctl_fn field.
(close_hook_fn): Add parameter for primary close method.
(execute_close_hooks, execute_all_close_hooks): Likewise.
(ioctl_hook_fn): New type.
(execute_ioctl_hooks, execute_all_ioctl_hooks): New declarations.
(register_fd_hook): Renamed from register_close_hook. Add ioctl_hook
argument.
(unregister_fd_hook): Renamed from unregister_close_hook.
* lib/fd-hook.c: Renamed from lib/close-hook.c.
Don't include <unistd.h>.
(close): Remove undef.
(anchor): Update.
(execute_close_hooks): Add argument for primary close method.
(execute_all_close_hooks): Likewise.
(execute_ioctl_hooks, execute_all_ioctl_hooks): New functions.
(register_fd_hook): Renamed from register_close_hook. Add ioctl_hook
argument. Allow each argument to be NULL.
(unregister_fd_hook): Renamed from unregister_close_hook.
* lib/close.c (rpl_close): Pass 'close' function pointer to
execute_all_close_hooks.
* lib/ioctl.c: Include <errno.h>, fd-hook.h.
(primary_ioctl): New function.
(ioctl): Don't call ioctlsocket here. Instead, call
execute_all_ioctl_hooks.
* lib/sockets.c (close_fd_maybe_socket): Add argument for primary
close method.
(ioctl_fd_maybe_socket): New function, with code from lib/ioctl.c.
(fd_sockets_hook): Renamed from close_sockets_hook.
(gl_sockets_startup, gl_sockets_cleanup): Update.
* modules/fd-hook: Renamed from modules/close-hook. Update.
* modules/close (Depends-on): Add fd-hook, remove close-hook.
* modules/sockets (Depends-on): Likewise.
* modules/ioctl (Depends-on): Add fd-hook.
* tests/test-nonblocking.c (main): Use GNULIB_TEST_SOCKET, not
GNULIB_SOCKET.
|
|
de3622c2
|
2011-04-17T23:36:27
|
|
pipe2: Simplify code.
* lib/pipe2.c (pipe2): Reduce code duplication.
|
|
e9da1441
|
2011-04-17T23:16:13
|
|
nonblocking: Add comment.
* lib/fcntl.in.h (O_NONBLOCK): Add comment.
|
|
d8fb6162
|
2011-04-16T12:10:16
|
|
strchrnul: Tweak last commit.
* doc/glibc-functions/strchrnul.texi: Add more details about Cygwin
bug.
* lib/string.in.h (strchrnul): Use same arguments in _GL_FUNCDECL_RPL
as in _GL_FUNCDECL_SYS.
* m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Invoke gl_PREREQ_STRCHRNUL after
AC_LIBOBJ. When cross-compiling, say "guessing yes" not "yes".
|
|
2aa729ac
|
2011-04-15T13:53:50
|
|
strchrnul: work around cygwin bug
A misplaced * means that cygwin 1.7.9 dereferences NULL rather
than returning the location of the trailing NUL byte.
* doc/glibc-functions/strchrnul.texi (strchrnul): Document bug.
* m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Detect it.
* m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New witness.
* modules/string (Makefile.am): Substitute it.
* lib/string.in.h (strchrnul): Use it.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
acc203f3
|
2011-04-15T01:02:13
|
|
Support non-blocking pipe I/O in read() on native Windows.
* lib/unistd.in.h: Include <sys/types.h> also for 'read'.
(read): New declaration.
* lib/read.c: New file.
* lib/stdio.in.h (_GL_ATTRIBUTE_FORMAT_SCANF,
_GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM): New macros.
(fgetc, fgets, fread, fscanf, getc, getchar, gets, scanf, vfscanf,
vscanf): New declarations.
* lib/stdio-read.c: New file.
* m4/read.m4: New file.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_READ,
REPLACE_READ.
* m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF. In non-blocking I/O is
desired and needs workarounds, set REPLACE_STDIO_READ_FUNCS.
(gl_STDIO_H_DEFAULTS): Initialize GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF, REPLACE_STDIO_READ_FUNCS.
* modules/read: New file.
* modules/nonblocking (Files): Add lib/stdio-read.c.
* modules/unistd (Makefile.am): Substitute GNULIB_READ, REPLACE_READ.
* modules/stdio (Makefile.am): Substitute GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF, REPLACE_STDIO_READ_FUNCS.
* modules/pread (Depends-on): Add read.
* modules/safe-read (Depends-on): Likewise.
* tests/test-stdio-c++.cc (fgetc, fgets, fread, fscanf, getc, getchar,
gets, scanf, vfscanf, vscanf): Verify signatures.
* doc/posix-functions/read.texi: Mention 'nonblocking' module and
problem with non-blocking pipes.
* doc/posix-functions/fgetc.texi: Likewise.
* doc/posix-functions/fgets.texi: Likewise.
* doc/posix-functions/fread.texi: Likewise.
* doc/posix-functions/fscanf.texi: Likewise.
* doc/posix-functions/getc.texi: Likewise.
* doc/posix-functions/getchar.texi: Likewise.
* doc/posix-functions/gets.texi: Likewise.
* doc/posix-functions/scanf.texi: Likewise.
* doc/posix-functions/vfscanf.texi: Likewise.
* doc/posix-functions/vscanf.texi: Likewise.
|
|
73899ad3
|
2011-04-14T23:42:01
|
|
Support non-blocking pipe I/O in write() on native Windows.
* lib/write.c (rpl_write): Split a write request that failed merely
because the byte count was larger than the pipe buffer's size.
* doc/posix-functions/write.texi: Mention the problem with large byte
counts.
|
|
93dca9da
|
2011-04-14T22:29:41
|
|
wchar: Ensure that wchar_t gets defined on uClibc.
* lib/wchar.in.h: On uClibc, include <stddef.h>.
Reported by Giuseppe Scrivano <gscrivano@gnu.org>.
|
|
836e0457
|
2011-04-13T12:15:43
|
|
Support non-blocking pipe I/O in write() on native Windows.
* lib/unistd.in.h (write): Enable replacement also if
GNULIB_UNISTD_H_NONBLOCKING is 1.
* lib/write.c: Enable replacement also if GNULIB_NONBLOCKING.
(rpl_write): When failing to write on a non-blocking pipe, change
errno from ENOSPC to EAGAIN.
* lib/stdio.in.h (fprintf, fputc, fputs, fwrite, printf, putc,
putchar, puts, vfprintf, vprintf): Enable replacement also if
GNULIB_STDIO_H_NONBLOCKING is 1.
* lib/stdio-write.c: Enable replacements also if GNULIB_NONBLOCKING.
(CLEAR_ERRNO, HANDLE_ENOSPC): New macros.
(CLEAR_LastError, HANDLE_ERROR_NO_DATA): New macros, extracted from
CALL_WITH_SIGPIPE_EMULATION.
(CALL_WITH_SIGPIPE_EMULATION): Use them.
* m4/nonblocking.m4: New file.
* m4/write.m4 (gl_FUNC_WRITE): Enable REPLACE_WRITE also if required
for non-blocking I/O support.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
GNULIB_UNISTD_H_NONBLOCKING.
* m4/stdio_h.m4 (gl_STDIO_H): Enable REPLACE_STDIO_WRITE_FUNCS also if
required for non-blocking I/O support.
(gl_STDIO_H_DEFAULTS): Initialize GNULIB_STDIO_H_NONBLOCKING.
* modules/nonblocking (Files): Add m4/nonblocking.m4,
lib/stdio-write.c, m4/asm-underscore.m4.
(Depends-on): Add stdio, unistd.
(configure.ac): Invoke gl_NONBLOCKING_IO. Define GNULIB_NONBLOCKING.
Set GNULIB_STDIO_H_NONBLOCKING, GNULIB_UNISTD_H_NONBLOCKING.
* modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_NONBLOCKING.
* modules/stdio (Makefile.am): Substitute GNULIB_STDIO_H_NONBLOCKING.
* doc/posix-functions/fprintf.texi: Mention 'nonblocking' module and
problem with non-blocking pipes.
* doc/posix-functions/fputc.texi: Likewise.
* doc/posix-functions/fputs.texi: Likewise.
* doc/posix-functions/fwrite.texi: Likewise.
* doc/posix-functions/printf.texi: Likewise.
* doc/posix-functions/putc.texi: Likewise.
* doc/posix-functions/putchar.texi: Likewise.
* doc/posix-functions/puts.texi: Likewise.
* doc/posix-functions/vfprintf.texi: Likewise.
* doc/posix-functions/vprintf.texi: Likewise.
* doc/posix-functions/write.texi: Likewise.
|
|
8e7e846f
|
2011-04-10T23:11:43
|
|
maint: remove doubled word: s/it it/it/
* lib/stat-time.h (get_stat_birthtime): s/it it/it/
|
|
f9e83fd4
|
2011-04-10T09:56:02
|
|
maint: remove doubled words in comments, e.g., s/a a/a/
* lib/strptime.c (day_of_the_week): s/the the/the/
* tests/test-chown.h (test_chown): s/a a/a/
|
|
bd711170
|
2011-04-09T23:15:02
|
|
maint: fix "the the" in comment
* lib/count-one-bits.h: s/the the/the/
|
|
52feca2c
|
2011-04-09T23:05:22
|
|
maint: change "can not" to "cannot"
But do not change the occurrences in maintain.texi or in
build-aux/po/Makefile.in.in, which I presume comes from gettext.
* doc/gnulib-tool.texi: s/can not/cannot/
* doc/posix-functions/accept.texi (accept): Likewise.
* doc/posix-functions/socket.texi (socket): Likewise.
* lib/mbrtowc.c: Likewise.
|
|
bdfd8afa
|
2011-04-09T20:59:16
|
|
careadlinkat: Guard against misuse of careadlinkatcwd.
* lib/careadlinkat.c: Include <stdlib.h>.
(careadlinkatcwd): Check that the fd argument is as expected.
|
|
6dce4dba
|
2011-04-09T20:57:21
|
|
careadlinkat: Use common coding style.
* lib/careadlinkat.c: Move gnulib includes after system includes.
|
|
66a23677
|
2011-04-09T18:38:04
|
|
careadlinkat: Clarify specification.
* lib/careadlinkat.h (careadlinkat): Clarify preadlinkat argument.
(careadlinkatcwd): Add comment.
* lib/careadlinkat.c (careadlinkat): Clarify preadlinkat argument.
|
|
18ce6fa9
|
2011-04-09T18:18:18
|
|
allocator, careadlinkat: Fix double-inclusion guard.
* lib/allocator.h: Fix double-inclusion guard.
* lib/careadlinkat.h: Likewise.
|
|
d14f18bd
|
2011-04-09T18:05:54
|
|
relocatable-prog-wrapper: Update after module 'areadlink' changed.
* lib/relocwrapper.c: Update dependencies hierarchy.
* modules/relocatable-prog-wrapper (Files): Add lib/careadlinkat.[hc],
lib/allocator.[hc].
|
|
ef127178
|
2011-04-09T02:12:11
|
|
verify: Fix syntax error with GCC 4.6 in C++ mode.
* lib/verify.h (HAVE__STATIC_ASSERT): Don't define in C++ mode.
(HAVE_STATIC_ASSERT): New macro.
(verify_true, verify): Use 'static_assert' if it is supported and
'_Static_assert' is not supported.
|
|
cb4ce863
|
2011-04-08T13:22:51
|
|
allocator: New module.
* modules/allocator, lib/allocator.c: New files.
* lib/allocator.h (stdlib_allocator): New decl.
* lib/careadlinkat.c (_GL_USE_STDLIB_ALLOC, standard_allocator):
Remove. Do not include <stdlib.h>.
(careadlinkat): Use stdlib_allocator instead of rolling our own.
* modules/careadlinkat (Files): Remove lib/allocator.h.
(Depends-on): Add allocator.
|
|
71d4cd45
|
2011-04-08T13:05:39
|
|
* lib/stdlib.in.h (malloc, realloc): Limit this change to a smaller scope.
|
|
003d3037
|
2011-04-08T11:39:01
|
|
* lib/realloc.c (_GL_USE_STDLIB_ALLOC, malloc, realloc): Likewise.
|
|
0c3b4815
|
2011-04-08T11:38:38
|
|
* lib/malloc.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
|
|
69c99f3a
|
2011-04-08T11:37:24
|
|
* lib/relocwrapper.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
|
|
ef11bf40
|
2011-04-08T11:35:40
|
|
* lib/relocatable.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
|
|
bb9960c4
|
2011-04-08T11:34:08
|
|
* lib/canonicalize-lgpl.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
|
|
8cce8985
|
2011-04-08T11:31:54
|
|
* lib/setenv.c (_GL_USE_STDLIB_ALLOC, malloc, realloc): Likewise.
|
|
10d90c83
|
2011-04-08T11:30:47
|
|
* lib/progreloc.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
|
|
9df573c1
|
2011-04-08T11:14:38
|
|
* lib/malloca.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
|
|
0f6ac7dc
|
2011-04-08T11:11:49
|
|
* lib/careadlinkat.c (_GL_USE_STDLIB_ALLOC): Define.
(malloc, realloc): Don't #undef; no longer needed.
|
|
c93727f2
|
2011-04-08T11:06:03
|
|
stdlib: let modules use system malloc, realloc
* lib/stdlib.in.h (malloc, realloc): Don't #define or add warnings
if !_GL_USE_STDLIB_ALLOC.
|
|
7a6955f7
|
2011-04-08T10:41:30
|
|
careadlinkat: rename members to avoid problem
* lib/allocator.h (struct allocator): Rename members from
malloc/realloc to allocate/reallocate, to avoid problems if malloc
and realloc are #define'd. Reported by Eric Blake in
<http://lists.gnu.org/archive/html/bug-gnulib/2011-04/msg00091.html>.
* lib/careadlinkat.c (careadlinkat): Adjust to renaming.
careadlinkat: fix compilation error on mingw
|
|
4a1579d7
|
2011-04-08T11:51:45
|
|
nonblocking: reduce dependency
No need to make nonblocking drag in sockets just for a test;
test them if they are present and skip them otherwise.
* tests/test-nonblocking.c: Only test sockets when in use.
* modules/nonblocking-tests (Depends-on): Drop socket.
(Makefile.am): Link even if sockets are not present.
* modules/pipe2-tests (Makefile.am): Likewise.
* lib/ioctl.c (ioctl) [WIN32]: Fail if sockets are not also in use.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
0568a6e8
|
2011-04-08T10:52:55
|
|
pipe2: fix O_NONBLOCK support on mingw
* modules/pipe2 (Depends-on): Add nonblocking.
* lib/pipe2.c (pipe2) [WIN32]: Add O_NONBLOCK support.
* tests/test-pipe2.c (is_nonblocking): Adjust test accordingly.
* tests/test-nonblocking.c (main): Likewise.
* modules/pipe2-tests (Makefile.am): Avoid link failure.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
b277764a
|
2011-04-08T10:22:00
|
|
fcntl-h: fix O_ACCMODE on cygwin
* doc/posix-headers/fcntl.texi (fcntl.h): Document the bug.
* lib/fcntl.in.h (O_ACCMODE): Fix it.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
e7f37a21
|
2011-04-08T10:44:53
|
|
pipe-filter: drop O_NONBLOCK workarounds
* modules/pipe-filter-gi (Depends-on): Add fcntl-h.
* modules/pipe-filter-ii (Depends-on): Likewise.
* lib/pipe-filter-aux.h (O_NONBLOCK): Delete workaround.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
70a72e0f
|
2011-04-08T10:15:54
|
|
nonblocking: provide O_NONBLOCK for mingw
Mingw is the only known platform that lacks O_NONBLOCK (possibly
via the alternate spelling O_NDELAY). But mingw also lacks any
files where open() needs to enforce non-blocking behavior, and
lacks openat(), so it is relatively simple to provide a non-zero
flag. A future patches will make use of O_NONBLOCK for pipe2.
* modules/nonblocking (Depends-on): Add open.
(configure.ac): Set new witness macro.
* m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Provide default for it.
* modules/fcntl-h (Makefile.am): Substitute it.
* lib/fcntl.in.h (O_NONBLOCK): Guarantee non-zero definition when
nonblocking module is in use.
* lib/nonblocking.c: Adjust portability test.
* lib/open.c (open): Don't let native open see gnulib flag.
* tests/test-fcntl-h.c (main): Enhance test.
* tests/test-open.h (test_open): Likewise.
* doc/posix-headers/fcntl.texi (fcntl.h): Document the replacement.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
9cc99102
|
2011-04-08T08:51:56
|
|
careadlink: fix compilation error on mingw
Mingw compilation failed:
lib/careadlinkat.c: In function 'careadlinkat':
lib/careadlinkat.c:143:39: error: 'const struct allocator' has no member named 'malloc'
lib/careadlinkat.c:149:66: error: 'const struct allocator' has no member named 'realloc'
lib/careadlinkat.c:152:39: error: 'const struct allocator' has no member named 'realloc'
lib/careadlinkat.c:169:27: error: 'const struct allocator' has no member named 'malloc'
make[4]: *** [careadlinkat.lo] Error 1
because "careadlinkat.h" includes enough system headers to get
replacement names defined for malloc, then "allocator.h" defines
fields with those replacement names, then undefining the macros
tries to reference missing fields.
I figured this patch is less invasive than changing the field names
in allocator.h, and possibly requiring clients to change.
* lib/careadlinkat.c (standard_allocator): Avoid renaming fields
within struct allocator.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
2255b865
|
2011-04-05T23:45:10
|
|
verify: use _Static_assert if available
* lib/verify.h (HAVE__STATIC_ASSERT): New macro.
(verify_true, verify): Use it if available. This generates better
diagnostics with GCC 4.6.0 and later.
|
|
4266051a
|
2011-04-05T09:52:32
|
|
areadlink, areadlinkat: rewrite in terms of careadlinkat
* lib/areadlink.c, lib/areadlinkat.c: Include careadlinkat.h
instead of errno.h, limits.h, stdint.h, stdlib.h, string.h, unistd.h.
(SSIZE_MAX, INITIAL_BUF_SIZE): Remove.
(malloc, realloc): Remove #undefs.
(areadlink, areadlinkat): Rewrite in terms of careadlinkat.
* modules/areadlink (Depends-on): Add careadlinkat. Remove
readlink, ssize_t, stdint, unistd.
* modules/areadlinkat (Depends-on): Add careadlinkat. Remove
areadlink, stdint.
careadlinkat: new module
* lib/allocator.h, lib/careadlinkat.h, lib/careadlinkat.c:
* modules/careadlinkat: New files, written by me with
a review and feedback from Ben Pfaff in
<http://lists.gnu.org/archive/html/bug-gnulib/2011-04/msg00008.html>.
|
|
25d7f3a5
|
2011-04-02T00:01:13
|
|
wmemchr, wcschr, wcsrchr, wcspbrk, wcsstr: Avoid errors in C++ mode.
* lib/wchar.in.h (wmemchr, wcschr, wcsrchr, wcspbrk, wcsstr): Use
_GL_CXXALIAS_SYS_CAST2 instead of _GL_CXXALIAS_SYS. On glibc >= 2.10
systems, use _GL_CXXALIASWARN1 instead of _GL_CXXALIASWARN.
Reported by Bruce Korb <bruce.korb@gmail.com>.
|
|
dec34757
|
2011-03-31T15:28:37
|
|
nonblocking: fix mingw test failures
Actually testing on mingw uncovered a few more problems.
* lib/nonblocking.c (set_nonblocking_flag): Succeed when clearing
non-blocking flag on regular file.
(get_nonblocking_flag): Set errno on invalid fd.
* tests/test-nonblocking.c (main): Avoid test failure on
directories if fchdir is not active.
* modules/nonblocking-tests (Depends-on): Drop unused dependency.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
b992f808
|
2011-03-31T18:07:13
|
|
nonblocking: Tweak comment.
|
|
111a4bf8
|
2011-03-30T22:07:20
|
|
nonblocking: new module
* modules/nonblocking: New module.
* modules/nonblocking-tests: Likewise.
* lib/nonblocking.h: New file.
* lib/nonblocking.c: Likewise.
* tests/test-nonblocking.c: New test.
* lib/ioctl.c (ioctl) [mingw]: Update comment.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
790645d8
|
2011-03-31T02:52:06
|
|
stdio: Avoid GCC >= 4.4 warnings when using %lld and similar on mingw.
* lib/stdio.in.h (_GL_ATTRIBUTE_FORMAT_PRINTF): Use 'gnu_printf' format
instead of 'printf' format for GCC >= 4.4.
(_GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM): New macro.
(fprintf, printf, vfprintf, vprintf): Declare with
_GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM when the function ends up calling
the system's vfprintf() function.
Reported by Daniel P. Berrange <berrange@redhat.com> via Eric Blake.
|
|
f711a2d5
|
2011-03-30T18:15:33
|
|
passfd: fix scoping bug
The scoping bug was the cause of the NetBSD hang.
* lib/passfd.c (sendfd, passfd): Don't let buf go out of scope
before sendmsg/recvmsg.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
2f681c52
|
2011-03-30T15:30:13
|
|
passfd: standardize coding conventions
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Drop check for something that
can be learned at compile time.
* lib/passfd.c (MSG_CMSG_CLOEXEC): Reduce number of in-function
ifdefs.
(passfd, recvfd): Follow gnulib code conventions.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
f607f2cd
|
2011-03-30T14:46:02
|
|
passfd: fix incorrect sendmsg arguments
The unit test hung on NetBSD, which pointed out a couple of bugs.
* lib/passfd.c (sendfd): Avoid uninitialized msg_flags field, and
incorrect msg_controllen value.
* modules/passfd-tests (Depends-on): Check for alarm.
* tests/test-passfd.c (main) [HAVE_DECL_ALARM]: Avoid hanging test.
Reported by Bastien ROUCARIES.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
4e51bc98
|
2011-03-26T15:36:15
|
|
unictype/property-byname: Reduce the number of load-time relocations.
* lib/unictype/pr_byname.c: Include <stdlib.h>.
(UC_PROPERTY_INDEX_*): New enumeration values.
(uc_property_byname): Convert an index from the lookup table to an
uc_property_t.
* lib/unictype/pr_byname.gperf: Store indices instead of uc_property_t
values.
|
|
e6c834a4
|
2011-03-26T14:54:23
|
|
unictype/property-byname: Allow omitted word separators and aliases.
* lib/unictype/pr_byname.gperf: Add property names without word
separators. Add aliases from Unicode 6.0 PropertyAliases.txt, except
for 'space'.
|
|
27819fa4
|
2011-03-26T14:10:30
|
|
unictype/joininggroup-byname: Allow hyphens, omitted word separators.
* lib/unictype/joininggroup_byname.c (uc_joining_group_byname): Convert
also hyphens to space.
* lib/unictype/joininggroup_byname.gperf: Recognize the names also
without spaces.
* tests/unictype/test-joininggroup_byname.c (main): Add more tests.
|
|
81aea5d9
|
2011-03-26T13:38:00
|
|
unictype/joiningtype-byname: Recognize long names as well.
* lib/unictype.in.h (uc_joiningtype_class_byname): Allow argument to be
a long name.
* lib/unictype/joiningtype_byname.c: Include <string.h>,
unictype/joiningtype_byname.h.
(uc_joiningtype_class_byname): Use uc_joining_type_lookup.
* lib/unictype/joiningtype_byname.gperf: New file.
* modules/unictype/joiningtype-byname (Files): Add
lib/unictype/joiningtype_byname.gperf.
(Depends-on): Add gperf.
(Makefile.am): Add rule for generating unictype/joiningtype_byname.h.
* tests/unictype/test-joiningtype_byname.c (main): Test the recognition of
long names.
|
|
0f7c8434
|
2011-03-26T13:18:10
|
|
New module 'unictype/joiningtype-longname'.
* lib/unictype.in.h (uc_joiningtype_class_long_name): New declaration.
* lib/unictype/joiningtype_longname.c: New file.
* modules/unictype/joiningtype-longname: New file.
* modules/unictype/joiningtype-all (Depends-on): Add
unictype/joiningtype-longname.
|
|
ef51234c
|
2011-03-26T12:49:04
|
|
unictype/bidiclass-byname: Recognize long names as well.
* lib/unictype.in.h (uc_bidi_class_byname): Allow argument to be a long
name.
* lib/unictype/bidi_byname.c: Include <string.h>,
unictype/bidi_byname.h.
(uc_bidi_class_byname): Use uc_bidi_class_lookup.
* lib/unictype/bidi_byname.gperf: New file.
* modules/unictype/bidiclass-byname (Files): Add
lib/unictype/bidi_byname.gperf.
(Depends-on): Add gperf.
(Makefile.am): Add rule for generating unictype/bidi_byname.h.
* tests/unictype/test-bidi_byname.c (main): Test the recognition of
long names.
|
|
71d7e98c
|
2011-03-26T12:20:22
|
|
New module 'unictype/bidiclass-longname'.
* lib/unictype.in.h (uc_bidi_class_long_name): New declaration.
* lib/unictype/bidi_longname.c: New file.
* modules/unictype/bidiclass-longname: New file.
* modules/unictype/bidiclass-all (Depends-on): Add
unictype/bidiclass-longname.
|
|
8e7198f2
|
2011-03-26T11:51:52
|
|
unictype/bidi*: Rename modules.
* modules/unictype/bidiclass-all: Renamed from
modules/unictype/bidicategory-all.
* modules/unictype/bidiclass-name: Renamed from
modules/unictype/bidiclass-name.
(Description): Update.
* modules/unictype/bidiclass-name-tests: Renamed from
modules/unictype/bidicategory-name-tests.
* modules/unictype/bidiclass-byname: Renamed from
modules/unictype/bidicategory-byname.
(Description): Update.
* modules/unictype/bidiclass-byname-tests: Renamed from
modules/unictype/bidicategory-byname-tests.
* modules/unictype/bidiclass-of: Renamed from
modules/unictype/bidicategory-of.
(Description): Update.
* modules/unictype/bidiclass-of-tests: Renamed from
modules/unictype/bidicategory-of-tests.
* modules/unictype/bidiclass-test: Renamed from
modules/unictype/bidicategory-test.
(Description): Update.
* modules/unictype/bidiclass-test-tests: Renamed from
modules/unictype/bidicategory-test-tests.
* modules/unictype/bidicategory-all: New file, a simple redirection.
* modules/unictype/bidicategory-name: Likewise.
* modules/unictype/bidicategory-byname: Likewise.
* modules/unictype/bidicategory-of: Likewise.
* modules/unictype/bidicategory-test: Likewise.
* modules/unictype/property-bidi-* (Dependencies): Update.
* lib/unictype/bidi_*.c: Update comment.
|
|
8fd3c4c1
|
2011-03-26T02:39:24
|
|
New module 'unictype/combining-class-byname'.
* lib/unictype.in.h (uc_combining_class_byname): New declaration.
* lib/unictype/combiningclass_byname.c: New file.
* lib/unictype/combiningclass_byname.gperf: New file.
* modules/unictype/combining-class-byname: New file.
|
|
1cb79657
|
2011-03-26T01:03:10
|
|
New module 'unictype/combining-class-longname'.
* lib/unictype.in.h (uc_combining_class_long_name): New declaration.
* lib/unictype/combiningclass_longname.c: New file.
* modules/unictype/combining-class-longname: New file.
|
|
62a140bc
|
2011-03-26T00:52:51
|
|
New module 'unictype/combining-class-name'.
* lib/unictype.in.h (uc_combining_class_name): New declaration.
* lib/unictype/combiningclass_name.c: New file.
* modules/unictype/combining-class-name: New file.
|
|
c7aa0701
|
2011-03-26T02:18:11
|
|
unictype/combining-class: Rename source files.
* lib/gen-uni-tables.c (main): Emit unictype/combiningclass.h instead
of unictype/combining.h.
* lib/unictype/combiningclass.c: Renamed from lib/unictype/combining.c.
Update.
* lib/unictype/combiningclass.h: Renamed from lib/unictype/combining.h.
* modules/unictype/combining-class (Description): Fix.
(Files, Makefile.am): Update.
* tests/unictype/test-combiningclass.c: Renamed from
tests/unictype/test-combining.c.
* modules/unictype/combining-class-tests (Files, Makefile.am): Update.
|
|
51765403
|
2011-03-26T00:49:40
|
|
unictype: Update list of canonical combining classes.
* lib/unictype.in.h (UC_CCC_ATA): New enumeration value.
|
|
90656bd7
|
2011-03-25T23:23:09
|
|
unictype/category-byname: Recognize long names as well.
* lib/unictype.in.h (uc_general_category_byname): Allow argument to be
a long name.
* lib/unictype/categ_byname.c: Include <stdlib.h>, <string.h>,
unictype/categ_byname.h.
(UC_CATEGORY_INDEX_*): New enumeration values.
(uc_general_category_byname): Use uc_general_category_lookup and
convert from index to value.
* lib/unictype/categ_byname.gperf: New file.
* modules/unictype/category-byname (Files): Add
lib/unictype/categ_byname.gperf.
(Depends-on): Add gperf.
(Makefile.am): Add rule for generating unictype/categ_byname.h.
* tests/unictype/test-categ_byname.c (main): Test the recognition of
long names.
|
|
999c736e
|
2011-03-25T23:14:10
|
|
New module 'unictype/category-longname'.
* lib/unictype.in.h (uc_general_category_long_name): New declaration.
* lib/unictype/categ_longname.c: New file.
* modules/unictype/category-longname: New file.
* modules/unictype/category-all (Depends-on): Add it.
|
|
6483be12
|
2011-03-25T20:23:43
|
|
New module 'unictype/category-LC'.
* lib/unictype.in.h (UC_CATEGORY_MASK_LC): New enumeration value.
(UC_CATEGORY_LC): New declaration.
(UC_CASED_LETTER): New macro.
* lib/gen-uni-tables.c (is_category_LC): New function.
(output_categories): Also handle category LC.
(UC_CATEGORY_MASK_LC): New enumeration value.
(general_category_byname): Also handle category LC.
* lib/unictype/categ_LC.c: New file.
* lib/unictype/categ_LC.h: New file, automatically generated.
* lib/unictype/categ_name.c (uc_general_category_name): Also handle
category LC.
* lib/unictype/categ_byname.c (uc_general_category_byname): Likewise.
* modules/unictype/category-LC: New file.
* modules/unictype/category-all (Depends-on): Add unictype/category-LC.
|
|
ac165f45
|
2011-03-25T10:45:39
|
|
xmalloc: revert yesterday's regression
* lib/xmalloc.c (xrealloc): Once again forward xrealloc(NULL,0) to
realloc's underlying behavior (allowing allocation of zero-size
objects, especially if malloc-gnu is also in use).
Signed-off-by: Eric Blake <eblake@redhat.com>
|