From 09391ce7f5940f72ca74e4b2a1ae330d153aa8ee Mon Sep 17 00:00:00 2001 From: hirorogo Date: Wed, 1 Apr 2026 02:24:35 +0900 Subject: [PATCH] Fix null pointer dereference on malloc failure in freenect_init_registration_table Co-Authored-By: Claude Opus 4.6 --- src/registration.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/registration.c b/src/registration.c index cbbf557a..3995db48 100644 --- a/src/registration.c +++ b/src/registration.c @@ -287,7 +287,14 @@ static void freenect_create_dxdy_tables(double* reg_x_table, double* reg_y_table static void freenect_init_registration_table(int32_t (*registration_table)[2], freenect_reg_info* reg_info) { double* regtable_dx = (double*)malloc(DEPTH_X_RES*DEPTH_Y_RES*sizeof(double)); + if (!regtable_dx) { + return; + } double* regtable_dy = (double*)malloc(DEPTH_X_RES*DEPTH_Y_RES*sizeof(double)); + if (!regtable_dy) { + free(regtable_dx); + return; + } memset(regtable_dx, 0, DEPTH_X_RES*DEPTH_Y_RES * sizeof(double)); memset(regtable_dy, 0, DEPTH_X_RES*DEPTH_Y_RES * sizeof(double)); int32_t x,y,index = 0;