* stdio/fread.c: Don't increment __offset when it's -1.
* elf/rtld.c (dl_main): Prepend tab to "statically linked". Exit
0 in that case.
* misc/err.c (vwarnx, vwarn): Fix major brainos.
* sysdeps/mach/hurd/dl-sysdep.c (mmap): Fix setting of
inheritance.
+Mon Dec 18 13:40:37 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+
+ * stdio/fread.c: Don't increment __offset when it's -1.
+
+ * elf/rtld.c (dl_main): Prepend tab to "statically linked". Exit
+ 0 in that case.
+
+ * misc/err.c (vwarnx, vwarn): Fix major brainos.
+
+ * sysdeps/mach/hurd/dl-sysdep.c (mmap): Fix setting of
+ inheritance.
+
Sun Dec 17 15:56:35 1995 Miles Bader <miles@gnu.ai.mit.edu>
* misc/getpass.c (getpass): Don't barf if getline returns a null BUF.
after relocation. */
if (! _dl_loaded->l_info[DT_NEEDED])
- {
- _dl_sysdep_message (_dl_loaded->l_name, ": statically linked\n",
- NULL);
- _exit (1);
- }
-
- for (l = _dl_loaded->l_next; l; l = l->l_next)
- {
- char buf[20], *bp;
- buf[sizeof buf - 1] = '\0';
- bp = _itoa (l->l_addr, &buf[sizeof buf - 1], 16, 0);
- while (&buf[sizeof buf - 1] - bp < sizeof l->l_addr * 2)
- *--bp = '0';
- _dl_sysdep_message ("\t", l->l_libname, " => ", l->l_name,
- " (0x", bp, ")\n", NULL);
- }
+ _dl_sysdep_message ("\t", "statically linked\n", NULL);
+ else
+ for (l = _dl_loaded->l_next; l; l = l->l_next)
+ {
+ char buf[20], *bp;
+ buf[sizeof buf - 1] = '\0';
+ bp = _itoa (l->l_addr, &buf[sizeof buf - 1], 16, 0);
+ while (&buf[sizeof buf - 1] - bp < sizeof l->l_addr * 2)
+ *--bp = '0';
+ _dl_sysdep_message ("\t", l->l_libname, " => ", l->l_name,
+ " (0x", bp, ")\n", NULL);
+ }
_exit (0);
}
#include <stdarg.h>
#include <err.h>
#include <stdlib.h>
+#include <errno.h>
+#include <string.h>
#include <stdio.h>
extern char *__progname;
}
void
-vwarn (const char *format, __gnuc_va_list ap)
+vwarnx (const char *format, __gnuc_va_list ap)
{
- fprintf (stderr, format, ap);
+ if (__progname)
+ fprintf (stderr, "%s: ", __progname);
+ if (format)
+ vfprintf (stderr, format, ap);
+ putc ('\n', stderr);
}
void
-vwarnx (const char *format, __gnuc_va_list ap)
+vwarn (const char *format, __gnuc_va_list ap)
{
+ int error = errno;
+
if (__progname)
fprintf (stderr, "%s: ", __progname);
- fprintf (stderr, format, ap);
- putc ('\n', stderr);
+ if (format)
+ {
+ vfprintf (stderr, format, ap);
+ fputs (": ", stderr);
+ }
+ fprintf (stderr, "%s\n", strerror (error));
}
-/* Copyright (C) 1991, 1992 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1995 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
if (count > 0)
{
to_read -= count;
- stream->__offset += count;
- stream->__target += count;
+ if (stream->__offset != -1)
+ {
+ stream->__offset += count;
+ stream->__target += count;
+ }
ptr += count;
}
else if (count == 0)
(mach_port_t) fd, (vm_offset_t) offset,
flags & (MAP_COPY|MAP_PRIVATE),
vmprot, VM_PROT_ALL,
- (flags & MAP_INHERIT) ? VM_INHERIT_COPY : VM_INHERIT_NONE);
+ (flags & MAP_SHARED) ? VM_INHERIT_SHARE : VM_INHERIT_COPY);
return err ? (caddr_t) __hurd_fail (err) : (caddr_t) mapaddr;
}