fix(modeld): Fix for unpredictable behavior in commonmodel_pyx.pyx (#32482)

Avoid undefined behavior

Co-authored-by: 19igari <koki.igari@turing-motors.com>
pull/31301/head^2
19igari 1 year ago committed by GitHub
parent d234085496
commit 25cc8a96ef
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 6
      selfdrive/modeld/models/commonmodel_pyx.pyx

@ -37,7 +37,11 @@ cdef class ModelFrame:
def prepare(self, VisionBuf buf, float[:] projection, CLMem output):
cdef mat3 cprojection
memcpy(cprojection.v, &projection[0], 9*sizeof(float))
cdef float * data = self.frame.prepare(buf.buf.buf_cl, buf.width, buf.height, buf.stride, buf.uv_offset, cprojection, output.mem)
cdef float * data
if output is None:
data = self.frame.prepare(buf.buf.buf_cl, buf.width, buf.height, buf.stride, buf.uv_offset, cprojection, NULL)
else:
data = self.frame.prepare(buf.buf.buf_cl, buf.width, buf.height, buf.stride, buf.uv_offset, cprojection, output.mem)
if not data:
return None
return np.asarray(<cnp.float32_t[:self.frame.buf_size]> data)

Loading…
Cancel
Save