From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2881 invoked by alias); 20 Oct 2016 10:56:43 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 39687 Received: (qmail 9507 invoked from network); 20 Oct 2016 10:56:43 -0000 X-Qmail-Scanner-Diagnostics: from mailout2.w1.samsung.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(210.118.77.12):SA:0(-0.3/5.0):. Processed in 0.183625 secs); 20 Oct 2016 10:56:43 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=RP_MATCHES_RCVD autolearn=unavailable autolearn_force=no version=3.4.1 X-Envelope-From: p.stephenson@samsung.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: none (ns1.primenet.com.au: domain at samsung.com does not designate permitted sender hosts) X-AuditID: cbfec7f4-f791c6d000006eac-78-5808a2e5ffb8 Date: Thu, 20 Oct 2016 11:56:34 +0100 From: Peter Stephenson To: Zsh hackers list Subject: Re: Cores almost on demand in patcompile() Message-id: <20161020115634.19683b37@pwslap01u.europe.root.pri> In-reply-to: <20161020114216.020eb53e@pwslap01u.europe.root.pri> Organization: Samsung Cambridge Solution Centre X-Mailer: Claws Mail 3.7.9 (GTK+ 2.22.0; i386-redhat-linux-gnu) MIME-version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrHIsWRmVeSWpSXmKPExsWy7djPc7pPF3FEGPyfrm1xsPkhkwOjx6qD H5gCGKO4bFJSczLLUov07RK4Mp7tmcNUsIunYtuib+wNjMc4uxg5OSQETCRu/F/ADGGLSVy4 t56ti5GLQ0hgKaNE57+JjBBOL5PEn3WN7DAdxyZNZ4JILAOqerWRBcKZxiSx4vlfdgjnDKPE 6cP3oJyzjBI7e5vB+lkEVCV+t/9hArHZBAwlpm6azQhiiwhoSew4eRIsLixgLDH1xiawOK+A vcSPW+/BejkFHCT+NDxmAbH5BfQlrv79xARxk73EzCtnoOoFJX5MvgdWwyygI7Ft22N2CFte YvOat8wgB0kI/GeTaFlwj7WLkQPIkZXYdAAaAi4SB071QtnCEq+Ob4H6WUbi8uRuFgi7n1Hi SbcvxJwZQF+e2cEGkbCW6Lt9kRFiGZ/EpG3TmSHm80p0tAlBlHhIfJ53GmqOo8SJxk9MExgV ZyE5exaSs2chOXsBI/MqRpHU0uLc9NRiE73ixNzi0rx0veT83E2MwFRw+t/xLzsYFx+zOsQo wMGoxMObcY49Qog1say4MvcQowQHs5II74oFHBFCvCmJlVWpRfnxRaU5qcWHGKU5WJTEefcs uBIuJJCeWJKanZpakFoEk2Xi4JRqYIxa8TA74v3bkPsO118XTRb/dq9PrlJRtu6SyBy3Qo0S tbsr76qdfbjVtUa6d+vv5yXV95g4GhcoKy379nZDkvPOLYIRa90aSs5Ltvcf+n3Y0GNGtJ1p Nm/qr/dfYpLXV1/ao3hw6RQvkzuNxR887t1nXV/eJSnCVHHxc1b+c+k/+Uf9yurWqCqxFGck GmoxFxUnAgCMCsUKAQMAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrOIsWRmVeSWpSXmKPExsVy+t/xq7oHF3FEGPx7JWdxsPkhkwOjx6qD H5gCGKPcbDJSE1NSixRS85LzUzLz0m2VQkPcdC2UFPISc1NtlSJ0fUOClBTKEnNKgTwjAzTg 4BzgHqykb5fglvFszxymgl08FdsWfWNvYDzG2cXIySEhYCJxbNJ0JghbTOLCvfVsXYxcHEIC Sxgl9vZdYoJwZjBJXD2+jQXCOccosfDOblYI5yyjxPRpG5lB+lkEVCV+t/8Bm8UmYCgxddNs RhBbREBLYsfJk2BxYQFjiak3NoHFeQXsJX7ces8OYnMKOEj8aXgMteENu0TbkhMsIAl+AX2J q38/QR1oLzHzyhmoZkGJH5PvgdUwAy3YvK2JFcKWl9i85i3YQUIC6hI37u5mn8AoPAtJyywk LbOQtCxgZF7FKJJaWpybnltspFecmFtcmpeul5yfu4kRGEnbjv3csoOx613wIUYBDkYlHt6M c+wRQqyJZcWVuYcYJTiYlUR4VyzgiBDiTUmsrEotyo8vKs1JLT7EaAoMmYnMUqLJ+cAozyuJ NzQxNLc0NDK2sDA3MlIS55364Uq4kEB6YklqdmpqQWoRTB8TB6dUA2OVpjLfMdUqNf35n9au cbJxEpMWrhJ4cnCqxrGf36RbFz85OKFj8e7FvCdvxbex+2qevzrJSHx2ldzGrcsFzb4E/jya bPVqckzfVvfjshMbV/beO/Rm19oJ1wI7931aN+n6+8tbRe+cVetqmz4v8+fXmmM1s1+WJ/ww OG/+K/1VnkxXWY5a4ozjSizFGYmGWsxFxYkAhSaqoroCAAA= X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20161020105637eucas1p2cfe44105331a6641425b9c2019deaafc X-Msg-Generator: CA X-Sender-IP: 182.198.249.180 X-Local-Sender: =?UTF-8?B?UGV0ZXIgU3RlcGhlbnNvbhtTQ1NDLURhdGEgUGxhbmUb?= =?UTF-8?B?7IK87ISx7KCE7J6QG1ByaW5jaXBhbCBFbmdpbmVlciwgU29mdHdhcmU=?= X-Global-Sender: =?UTF-8?B?UGV0ZXIgU3RlcGhlbnNvbhtTQ1NDLURhdGEgUGxhbmUbU2Ft?= =?UTF-8?B?c3VuZyBFbGVjdHJvbmljcxtQcmluY2lwYWwgRW5naW5lZXIsIFNvZnR3YXJl?= X-Sender-Code: =?UTF-8?B?QzEwG0VIURtDMTBDRDA1Q0QwNTAwNTg=?= CMS-TYPE: 201P X-HopCount: 7 X-CMS-RootMailID: 20161011044403eucas1p1da8d4beef07f15ef1fb7e821eab83152 X-RootMTR: 20161011044403eucas1p1da8d4beef07f15ef1fb7e821eab83152 References: <20161013104321.29159e3f@pwslap01u.europe.root.pri> <20161019141435.42eb6df2@pwslap01u.europe.root.pri> <20161020103259.0b0fe556@pwslap01u.europe.root.pri> <20161020111819.4088896a@pwslap01u.europe.root.pri> <20161020114216.020eb53e@pwslap01u.europe.root.pri> On Thu, 20 Oct 2016 11:42:16 +0100 Peter Stephenson wrote: > On Thu, 20 Oct 2016 12:30:50 +0200 > Sebastian Gniazdowski wrote: > > Valgrind points at patadd(NULL, 0, nmeta, 0). Wonder why not to its > > interior? But to all logic, problem should be inside patadd() because > > nothing else near dereferences a pointer. So there might be two > > problems. Debugger didn't report inaccessible memory when I did > > step-over on the patadd(), maybe memory is accessible but invalid from > > other reason recognized by Valgrind. > > Just to be sure, could you confirm the problem goes away if you change > line 292 of pattern.c > > /* Default size for pattern buffer */ > #define P_DEF_ALLOC 256 > > to > > /* Default size for pattern buffer */ > #define P_DEF_ALLOC 512 > > ? That's not a fix, it's just putting off the problem, but if it's > initially allocating something larger than what your pattern needs I'd > expect the crash not to happen. I'm now starting to wonder if the realloc is a red herring and the key point is this... * Careful in case we've overwritten the node for the next ptr. It's a long time since I did this but if the P_PURESTR flag is set, I don't think there can be more than one P_EXACTLY. So the solution may be to break out of the for loop at the end of the if (P_OP(pscan) == P_EXACTLY) { /* .... */ break; /* <- here... */ } immediately after line 692 in the modified code since the "next" can't be relevant any more. pws