From owner-svn-src-user@FreeBSD.ORG Wed Sep 7 14:04:51 2011 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D2C131065670; Wed, 7 Sep 2011 14:04:51 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id C23868FC0C; Wed, 7 Sep 2011 14:04:51 +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 p87E4pOZ041957; Wed, 7 Sep 2011 14:04:51 GMT (envelope-from gabor@svn.freebsd.org) Received: (from gabor@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id p87E4pfo041955; Wed, 7 Sep 2011 14:04:51 GMT (envelope-from gabor@svn.freebsd.org) Message-Id: <201109071404.p87E4pfo041955@svn.freebsd.org> From: Gabor Kovesdan Date: Wed, 7 Sep 2011 14:04:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r225437 - user/gabor/grep/trunk/regex X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Sep 2011 14:04:51 -0000 Author: gabor Date: Wed Sep 7 14:04:51 2011 New Revision: 225437 URL: http://svn.freebsd.org/changeset/base/225437 Log: - Correct BC shift Modified: user/gabor/grep/trunk/regex/tre-fastmatch.c Modified: user/gabor/grep/trunk/regex/tre-fastmatch.c ============================================================================== --- user/gabor/grep/trunk/regex/tre-fastmatch.c Wed Sep 7 13:26:20 2011 (r225436) +++ user/gabor/grep/trunk/regex/tre-fastmatch.c Wed Sep 7 14:04:51 2011 (r225437) @@ -142,7 +142,7 @@ static int fastcmp(const void *, const b mismatch -= u; \ v = fg->wlen - 1 - mismatch; \ r = hashtable_get(fg->qsBc_table, \ - &((tre_char_t *)startptr)[mismatch + 1], &bc); \ + &str_wide[j + fg->wlen], &bc); \ gs = fg->bmGs[mismatch]; \ } \ bc = (r == HASH_OK) ? bc : fg->defBc; \ @@ -158,7 +158,7 @@ static int fastcmp(const void *, const b v = fg->len - 1 - mismatch; \ gs = fg->sbmGs[mismatch]; \ } \ - bc = fg->qsBc[((unsigned char *)startptr)[mismatch + 1]]; \ + bc = fg->qsBc[((unsigned char *)str_byte)[j + fg->len]]; \ DPRINT(("tre_fast_match: mismatch on character %c, " \ "BC %d, GS %d\n", \ ((unsigned char *)startptr)[mismatch + 1], bc, gs)); \