From 02effc8ef62ba30fc6bd8a57281105e3aecc29ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= Date: Thu, 22 Oct 2015 09:56:47 +0100 Subject: [PATCH] ubsan failure on bootstrapping crashtesting Change-Id: Ie2b338bdd75f26953c758b64711e60b6f5ce9c83 --- external/python3/ubsan.patch.0 | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/external/python3/ubsan.patch.0 b/external/python3/ubsan.patch.0 index 32a079e04a01..e3798174baa0 100644 --- a/external/python3/ubsan.patch.0 +++ b/external/python3/ubsan.patch.0 @@ -62,3 +62,18 @@ Py_INCREF(v); #ifdef COUNT_ALLOCS if (ival >= 0) +--- Modules/_ctypes/_ctypes.c ++++ Modules/_ctypes/_ctypes.c +@@ -1328,8 +1328,10 @@ + if (stgdict->shape == NULL) + goto error; + stgdict->shape[0] = length; +- memmove(&stgdict->shape[1], itemdict->shape, +- sizeof(Py_ssize_t) * (stgdict->ndim - 1)); ++ if (itemdict->shape) { ++ memmove(&stgdict->shape[1], itemdict->shape, ++ sizeof(Py_ssize_t) * (stgdict->ndim - 1)); ++ } + + itemsize = itemdict->size; + if (length * itemsize < 0) {