From owner-svn-src-all@FreeBSD.ORG Fri Aug 19 12:48:07 2011 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 07F19106564A; Fri, 19 Aug 2011 12:48:07 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id EC4D08FC14; Fri, 19 Aug 2011 12:48:06 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id p7JCm6oE004216; Fri, 19 Aug 2011 12:48:06 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id p7JCm6fc004214; Fri, 19 Aug 2011 12:48:06 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201108191248.p7JCm6fc004214@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Fri, 19 Aug 2011 12:48:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r225007 - head/sbin/fdisk X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Aug 2011 12:48:07 -0000 Author: ae Date: Fri Aug 19 12:48:06 2011 New Revision: 225007 URL: http://svn.freebsd.org/changeset/base/225007 Log: The decimal() function was changed in r217808 to take the maximum value instead of number of bits. But for case when limitation is not needed it erroneously skips conversion to number and always returns zero. So, don't skip conversion for case when limitation is not needed. PR: bin/159765 Approved by: re (kib) Modified: head/sbin/fdisk/fdisk.c Modified: head/sbin/fdisk/fdisk.c ============================================================================== --- head/sbin/fdisk/fdisk.c Fri Aug 19 12:08:54 2011 (r225006) +++ head/sbin/fdisk/fdisk.c Fri Aug 19 12:48:06 2011 (r225007) @@ -940,7 +940,7 @@ decimal(const char *str, int *num, int d return 0; while ((c = *cp++)) { if (c <= '9' && c >= '0') { - if (maxval > 0 && acc <= maxval) + if (acc <= maxval || maxval == 0) acc = acc * 10 + c - '0'; } else break;