0.14: fix brk again (missing __brk, trivial oversight) a new i386/atol.S that is 4 bytes smaller (and faster, too!). Thanks, Thomas Ogrisegg! Thomas also contributed a PA-RISC port including testandset, so libpthread will work once we implement clone! Great work, Thomas. made the fake locale more believable. If you need gettext, use http://www.ca.postgresql.org/~petere/gettext.html moved _exit into the unified syscall on x86. Uwe Ohse found many more bugs: getpass EINTR handling, ttyname, sysconf_cpus with SLASH_PROC_OK, liblatin1 was more or less completely broken if you gave it chars as arguments, not ints (signedness). execvp had a buffer overflow in case a PATH element exceeded PATH_MAX, but it's not a security problem since setuid programs need to set their path to some known value anyway. hasmntopt did not work with foo=bar style options Uwe also improved ftw's stack usage. Put movl instead of popl rationale in comment in i386/unified.S since three people have suggested saving a few bytes with popl now ;) I discovered __attribute__((malloc)) and started using it. For gcc 3, it improves the optimizer when functions return malloced pointers. Steven Rostedt pointed out that my setvbuf was broken with regard to size==0 and sent a patch to fix it. Thomas Ogrisegg made setenv smaller. Olaf: implemented the parisc clone and an atomic testandset, modified the libpthread to respect the parisc UPgrowing stack. still non functional, because the unified syscall uses errno :( tcgetospeed read from the wrong termios field. Thanks, Gunnar Ritter! Fixed asprintf (relied on vsnprintf(NULL,...) to return length but don't write anything which was no longer the case. It also allocated one byte unnecessarily, which Uwe Ohse found. Fix ttyname (readlink does not \0-terminate, forgot to do that).