=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/dc/bcode.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- src/usr.bin/dc/bcode.c 2003/09/22 14:49:16 1.5 +++ src/usr.bin/dc/bcode.c 2003/09/28 19:15:53 1.6 @@ -1,4 +1,4 @@ -/* $OpenBSD: bcode.c,v 1.5 2003/09/22 14:49:16 otto Exp $ */ +/* $OpenBSD: bcode.c,v 1.6 2003/09/28 19:15:53 otto Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek @@ -17,7 +17,7 @@ */ #ifndef lint -static const char rcsid[] = "$OpenBSD: bcode.c,v 1.5 2003/09/22 14:49:16 otto Exp $"; +static const char rcsid[] = "$OpenBSD: bcode.c,v 1.6 2003/09/28 19:15:53 otto Exp $"; #endif /* not lint */ #include @@ -770,10 +770,11 @@ reg = readch(); if (0 <= reg && reg < UCHAR_MAX) { inumber = pop_number(); + if (inumber == NULL) + return; value = pop(); - if (inumber == NULL) { - if (value != NULL) - stack_free_value(value); + if (value == NULL) { + free_number(inumber); return; } index = get_ulong(inumber);