diff options
author | dg <dg@FreeBSD.org> | 1994-08-13 14:00:26 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 1994-08-13 14:00:26 +0000 |
commit | 700593f434cf6d270fc2a6fec50aba5a94e5869e (patch) | |
tree | 435d11587633e2032aaf4109342ec7bb72751d8f /lib/libc/i386/sys | |
parent | 25006117f16c9367ac22c12702d01d3db9579544 (diff) | |
download | FreeBSD-src-700593f434cf6d270fc2a6fec50aba5a94e5869e.zip FreeBSD-src-700593f434cf6d270fc2a6fec50aba5a94e5869e.tar.gz |
Fixed problem with returning -1 on error when the return value is a
long long. Done by plugging both eax and edx with -1. This will clobber
edx unnecessarily when the return value is only 32bit...though probably
always an okay thing to do, it could stand a better fix.
This was the cause of gawk being broken (boy was THAT ever a subtle
bug!!!).
Diffstat (limited to 'lib/libc/i386/sys')
-rw-r--r-- | lib/libc/i386/sys/cerror.S | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/libc/i386/sys/cerror.S b/lib/libc/i386/sys/cerror.S index 27fec0a..7c21f5e 100644 --- a/lib/libc/i386/sys/cerror.S +++ b/lib/libc/i386/sys/cerror.S @@ -33,7 +33,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: cerror.S,v 1.2 1994/02/21 05:19:09 rgrimes Exp $ + * $Id: cerror.S,v 1.1 1994/08/05 01:18:40 wollman Exp $ */ #if defined(SYSLIBC_SCCS) && !defined(lint) @@ -53,4 +53,5 @@ cerror: movl %eax,_errno #endif movl $-1,%eax + movl $-1,%edx ret |