[Transform/Transpose] Check the validity of dimensions
authorMyungJoo Ham <myungjoo.ham@samsung.com>
Wed, 19 Sep 2018 08:10:52 +0000 (17:10 +0900)
committerjaeyun-jung <39614140+jaeyun-jung@users.noreply.github.com>
Wed, 19 Sep 2018 11:37:40 +0000 (20:37 +0900)
If it is < 0 or >= 4, it is not valid and breaks the buffer.

Supposed to Fix #552

ps. @jijoongmoon : You do not have unit testcases for transpose!

CC: Jijoong Moon <jijoong.moon@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
gst/tensor_transform/tensor_transform.c

index ca3c230..9abbd99 100644 (file)
@@ -965,6 +965,8 @@ gst_tensor_dimension_conversion (GstTensor_Transform * filter,
         }
       } else {
         for (i = 0; i < NNS_TENSOR_RANK_LIMIT; i++) {
+          g_assert (filter->data_transpose.trans_order[i] >= 0 &&
+              filter->data_transpose.trans_order[i] < NNS_TENSOR_RANK_LIMIT);
           destDim[filter->data_transpose.trans_order[i]] = srcDim[i];
         }
       }