Check the pointer is NULL or not
authorXiang, Haihao <haihao.xiang@intel.com>
Fri, 15 Mar 2013 07:19:49 +0000 (15:19 +0800)
committerXiang, Haihao <haihao.xiang@intel.com>
Fri, 15 Mar 2013 07:45:28 +0000 (15:45 +0800)
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
src/gen75_vpp_gpe.c
src/i965_encoder_utils.c

index fb7eba6..70f229b 100644 (file)
@@ -403,6 +403,11 @@ gen75_gpe_process_sharpening(VADriverContextP ctx,
     vpp_gpe_ctx->thread_param = (unsigned char*) malloc(vpp_gpe_ctx->thread_param_size
                                                        *vpp_gpe_ctx->thread_num);
     pos = vpp_gpe_ctx->thread_param;
+
+    if (!pos) {
+        return VA_STATUS_ERROR_ALLOCATION_FAILED;
+    }
+
     for( i = 0 ; i < vpp_gpe_ctx->thread_num; i++){
         thr_param.base.v_pos = 16 * i;
         thr_param.base.h_pos = 0;
@@ -425,6 +430,11 @@ gen75_gpe_process_sharpening(VADriverContextP ctx,
     vpp_gpe_ctx->thread_param = (unsigned char*) malloc(vpp_gpe_ctx->thread_param_size
                                                        *vpp_gpe_ctx->thread_num);
     pos = vpp_gpe_ctx->thread_param;
+
+    if (!pos) {
+        return VA_STATUS_ERROR_ALLOCATION_FAILED;
+    }
+
     for( i = 0 ; i < vpp_gpe_ctx->thread_num; i++){
         thr_param.base.v_pos = 0;
         thr_param.base.h_pos = 16 * i;
@@ -448,6 +458,11 @@ gen75_gpe_process_sharpening(VADriverContextP ctx,
     vpp_gpe_ctx->thread_param = (unsigned char*) malloc(vpp_gpe_ctx->thread_param_size
                                                        *vpp_gpe_ctx->thread_num);
     pos = vpp_gpe_ctx->thread_param;
+
+    if (!pos) {
+        return VA_STATUS_ERROR_ALLOCATION_FAILED;
+    }
+
     for( i = 0 ; i < vpp_gpe_ctx->thread_num; i++){
         thr_param.base.v_pos = 4 * i;
         thr_param.base.h_pos = 0;
index e4fe220..7f6f768 100644 (file)
@@ -126,6 +126,9 @@ avc_bitstream_put_ui(avc_bitstream *bs, unsigned int val, int size_in_bits)
         if (pos + 1 == bs->max_size_in_dword) {
             bs->max_size_in_dword += BITSTREAM_ALLOCATE_STEPPING;
             bs->buffer = realloc(bs->buffer, bs->max_size_in_dword * sizeof(unsigned int));
+            
+            if (!bs->buffer)
+                return;
         }
 
         bs->buffer[pos + 1] = val;