From owner-svn-src-projects@FreeBSD.ORG Fri Mar 9 18:15:38 2012 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C11BE106566C; Fri, 9 Mar 2012 18:15:38 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id AC8668FC14; Fri, 9 Mar 2012 18:15:38 +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 q29IFcCA019049; Fri, 9 Mar 2012 18:15:38 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q29IFcCZ019047; Fri, 9 Mar 2012 18:15:38 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201203091815.q29IFcCZ019047@svn.freebsd.org> From: Jung-uk Kim Date: Fri, 9 Mar 2012 18:15:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r232736 - projects/bigbb/sys/boot/i386/boot2 X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Mar 2012 18:15:38 -0000 Author: jkim Date: Fri Mar 9 18:15:38 2012 New Revision: 232736 URL: http://svn.freebsd.org/changeset/base/232736 Log: Initialize opts and kname correctly. BSS for boot2 does not auto-clear. See r219452 for more information. Reported by: jhb Modified: projects/bigbb/sys/boot/i386/boot2/boot2.c Modified: projects/bigbb/sys/boot/i386/boot2/boot2.c ============================================================================== --- projects/bigbb/sys/boot/i386/boot2/boot2.c Fri Mar 9 17:47:59 2012 (r232735) +++ projects/bigbb/sys/boot/i386/boot2/boot2.c Fri Mar 9 18:15:38 2012 (r232736) @@ -129,8 +129,8 @@ static struct dsk { int init; } dsk; static char cmd[512], cmddup[512], knamebuf[1024]; -static const char *kname; -static uint32_t opts; +static const char *kname = 0; +static uint32_t opts = 0; static int comspeed = SIOSPD; static struct bootinfo bootinfo; static uint8_t ioctrl = IO_KEYBOARD; @@ -223,6 +223,7 @@ main(void) { uint8_t autoboot; ino_t ino; + size_t nbyte; dmadat = (void *)(roundup2(__base + (int32_t)&_end, 0x10000) - __base); v86.ctl = V86_FLAGS; @@ -239,8 +240,10 @@ main(void) autoboot = 1; if ((ino = lookup(PATH_CONFIG)) || - (ino = lookup(PATH_DOTCONFIG))) - fsread(ino, cmd, sizeof(cmd) - 1); + (ino = lookup(PATH_DOTCONFIG))) { + nbyte = fsread(ino, cmd, sizeof(cmd) - 1); + cmd[nbyte] = '\0'; + } if (*cmd) { memcpy(cmddup, cmd, sizeof(cmd));