From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 69A1E7030F; Sat, 13 Feb 2021 18:38:59 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 69A1E7030F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1613230739; bh=l6i5CgotXlRye5Wka9vHI5CRG7URpD+1YILAYLLNTKQ=; h=To:Cc:Date:In-Reply-To:References:Subject:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=q0dDe/3+UFSh6ayXFoGiLBqHAw2oWgR/CEbm7h5VxQtJcFgF0LqfWy++VISlth4fV 6U99CY2jOdjeTSaC5kqHAktSVr4W5Drv1nADueK3wx29OmVk93jQLaYZ6/EmQxnNI8 JHksLyaukCi0L26dhI+3WCIAdKUGACN9PcBnbPkc= Received: from smtpng2.m.smailru.net (smtpng2.m.smailru.net [94.100.179.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 6B2C97030F for ; Sat, 13 Feb 2021 18:38:33 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 6B2C97030F Received: by smtpng2.m.smailru.net with esmtpa (envelope-from ) id 1lAx09-0000FB-Ig; Sat, 13 Feb 2021 18:38:29 +0300 To: s.ostanevich@corp.mail.ru, tsafin@tarantool.org Cc: tarantool-patches@dev.tarantool.org Date: Sat, 13 Feb 2021 18:38:29 +0300 Message-Id: <0ef21d5f7e3f95927959e96ac3aeab2edcd4544b.1613230498.git.imeevma@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-618D5548: C833FDA30DAF962D046F4314B489AEC73E66A9355E945389F18101999FA26800 X-7564579A: B8F34718100C35BD X-77F55803: 4F1203BC0FB41BD981647AC6901E234B3C0BB31FF5B9BFFCC0C1915C04F25056182A05F538085040BE1DFB9463C3CF06A0C173E42E0E7A5B757CD56B7E023D56AD19B0C258460CEE X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE75DF2B1F23425CAE5EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F790063726CA83C7ABDB938E8638F802B75D45FF5571747095F342E8C7A0BC55FA0FE5FC2CDB662838BF7A907A2093643E9A08DE3E308C4482A01221389733CBF5DBD5E913377AFFFEAFD269A417C69337E82CC2CC7F00164DA146DAFE8445B8C89999729449624AB7ADAF37F6B57BC7E64490611E7FA7ABCAF51C92176DF2183F8FC7C0A29E2F051442AF778941B15DA834481F9449624AB7ADAF3735872C767BF85DA29E625A9149C048EE0A3850AC1BE2E735D2457FAF19517CF24AD6D5ED66289B524E70A05D1297E1BB35872C767BF85DA227C277FBC8AE2E8B8C0F931425D397B1EFF80C71ABB335746BA297DBC24807EA27F269C8F02392CDC58410348177836EDE7CCDD3542A186E00306258E7E6ABB4E4A6367B16DE6309 X-C1DE0DAB: C20DE7B7AB408E4181F030C43753B8186998911F362727C414F749A5E30D975CD27AC6BE5C1CDEA9C031C6363010D5BD14EE7CFFDEC39C349C2B6934AE262D3EE7EAB7254005DCED7532B743992DF240BDC6A1CF3F042BAD6DF99611D93F60EF31C0090ACECF247D699F904B3F4130E343918A1A30D5E7FCCB5012B2E24CD356 X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D34697E0FA301E2821515A1CF1627E192F458D85681A1DCBD978018B09EE5D083B9808E5CEB0EDFC31E1D7E09C32AA3244C002CF5F8D8BB7F929EFAB51966902F837C0C08F7987826B9FACE5A9C96DEB163 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2bioj+JvDbeHF34ylhU0oN5+A/Q== X-Mailru-Sender: 689FA8AB762F73936BC43F508A063822B4E1B9B05F1CBD9CA3BA8E874C52FEC683D72C36FC87018B9F80AB2734326CD2FB559BB5D741EB96352A0ABBE4FDA4210A04DAD6CC59E33667EA787935ED9F1B X-Mras: Ok Subject: [Tarantool-patches] [PATCH v2 1/2] sql: Initialize MEM in sqlVdbeAllocUnpackedRecord() X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Mergen Imeev via Tarantool-patches Reply-To: imeevma@tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" This patch adds initialization for newly created MEM objects in sqlVdbeAllocUnpackedRecord(). Changing a MEM without being initialized may give us unexpected result. Part of #4470 --- src/box/sql/vdbeaux.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/box/sql/vdbeaux.c b/src/box/sql/vdbeaux.c index 91b64316e..5c2706e49 100644 --- a/src/box/sql/vdbeaux.c +++ b/src/box/sql/vdbeaux.c @@ -2329,6 +2329,8 @@ sqlVdbeAllocUnpackedRecord(struct sql *db, struct key_def *key_def) if (!p) return 0; p->aMem = (Mem *) & ((char *)p)[ROUND8(sizeof(UnpackedRecord))]; + for (uint32_t i = 0; i < key_def->part_count + 1; ++i) + sqlVdbeMemInit(&p->aMem[i], sql_get(), MEM_Null); p->key_def = key_def; p->nField = key_def->part_count + 1; return p; -- 2.25.1