From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18526 invoked by alias); 9 Aug 2010 10:29:43 -0000 Received: (qmail 18512 invoked by uid 9449); 9 Aug 2010 10:29:43 -0000 Date: Mon, 09 Aug 2010 10:29:00 -0000 Message-ID: <20100809102943.18510.qmail@sourceware.org> From: thornber@sourceware.org To: lvm-devel@redhat.com, lvm2-cvs@sourceware.org Subject: LVM2/libdm/regex parse_rx.c Mailing-List: contact lvm2-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: lvm2-cvs-owner@sourceware.org X-SW-Source: 2010-08/txt/msg00029.txt.bz2 CVSROOT: /cvs/lvm2 Module name: LVM2 Changes by: thornber@sourceware.org 2010-08-09 10:29:42 Modified files: libdm/regex : parse_rx.c Log message: [REGEX] Parse regexes that contain chars with value > 0x80 This is a long standing issue. Fixed by casting a char value to unsigned char before using it as an index into a bitset. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/libdm/regex/parse_rx.c.diff?cvsroot=lvm2&r1=1.12&r2=1.13 --- LVM2/libdm/regex/parse_rx.c 2010/07/21 11:58:49 1.12 +++ LVM2/libdm/regex/parse_rx.c 2010/08/09 10:29:42 1.13 @@ -271,7 +271,7 @@ ps->type = 0; ps->cursor = ptr + 1; dm_bit_clear_all(ps->charset); - dm_bit_set(ps->charset, (int) *ptr); + dm_bit_set(ps->charset, (int) (unsigned char) *ptr); break; }