Skip to content

Commit 88d92bb

Browse files
committed
fixes
1 parent 4ad5db4 commit 88d92bb

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

agent/lib_aws_sdk_php.c

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,7 @@ void nr_lib_aws_sdk_php_lambda_handle(nr_segment_t* auto_segment,
321321
return;
322322
}
323323

324-
if (NULL == retval_ptr) {
324+
if (NULL == *retval_ptr) {
325325
/* Do not instrument when an exception has happened */
326326
return;
327327
}
@@ -362,17 +362,19 @@ void nr_lib_aws_sdk_php_lambda_handle(nr_segment_t* auto_segment,
362362
nr_segment_traces_add_cloud_attributes(external_segment, &cloud_attrs);
363363
nr_segment_external_params_t external_params = {.library = "aws_sdk"};
364364
zval* data = nr_php_get_zval_object_property(*retval_ptr, "data");
365-
if (NULL != data && IS_ARRAY == Z_TYPE_P(data)) {
365+
if (nr_php_is_zval_valid_array(data)) {
366366
zval* status_code = nr_php_zend_hash_find(Z_ARRVAL_P(data), "StatusCode");
367-
if (NULL != status_code && IS_LONG == Z_TYPE_P(status_code)) {
367+
if (nr_php_is_zval_valid_integer(status_code)) {
368368
external_params.status = Z_LVAL_P(status_code);
369369
}
370370
zval* metadata = nr_php_zend_hash_find(Z_ARRVAL_P(data), "@metadata");
371-
if (NULL != metadata && IS_REFERENCE == Z_TYPE_P(metadata)
372-
&& IS_ARRAY == Z_TYPE_P(Z_REFVAL_P(metadata))) {
373-
zval* uri = nr_php_zend_hash_find(Z_ARRVAL_P(Z_REFVAL_P(metadata)), "effectiveUri");
374-
if (NULL != uri && IS_STRING == Z_TYPE_P(uri)) {
375-
external_params.uri = Z_STRVAL_P(uri);
371+
if (NULL != metadata && IS_REFERENCE == Z_TYPE_P(metadata)) {
372+
metadata = Z_REFVAL_P(metadata);
373+
if (IS_ARRAY == Z_TYPE_P(metadata)) {
374+
zval* uri = nr_php_zend_hash_find(Z_ARRVAL_P(metadata), "effectiveUri");
375+
if (nr_php_is_zval_valid_string(uri)) {
376+
external_params.uri = Z_STRVAL_P(uri);
377+
}
376378
}
377379
}
378380
}
@@ -391,15 +393,15 @@ void nr_aws_lambda_invoke(NR_EXECUTE_PROTO, nr_segment_cloud_attrs_t* cloud_attr
391393
char* accountID = NULL;
392394

393395
/* verify arguments */
394-
if (NULL == call_args || IS_ARRAY != Z_TYPE_P(call_args)) {
396+
if (!nr_php_is_zval_valid_array(call_args)) {
395397
return;
396398
}
397399
zval* lambda_args = nr_php_zend_hash_index_find(Z_ARRVAL_P(call_args), 0);
398-
if (NULL == lambda_args || IS_ARRAY != Z_TYPE_P(lambda_args)) {
400+
if (!nr_php_is_zval_valid_array(lambda_args)) {
399401
return;
400402
}
401403
zval* lambda_name = nr_php_zend_hash_find(Z_ARRVAL_P(lambda_args), "FunctionName");
402-
if (NULL == lambda_name || IS_STRING != Z_TYPE_P(lambda_name)) {
404+
if (!nr_php_is_zval_valid_string(lambda_name)) {
403405
return;
404406
}
405407

@@ -431,7 +433,8 @@ void nr_aws_lambda_invoke(NR_EXECUTE_PROTO, nr_segment_cloud_attrs_t* cloud_attr
431433
accountID = NRINI(aws_account_id);
432434
}
433435
if (nr_strempty(region)) {
434-
region_zval = nr_php_call(this_obj, "getRegion");
436+
region_zval
437+
= nr_php_get_zval_object_property(this_obj, "region");
435438
if (nr_php_is_zval_valid_string(region_zval)) {
436439
region = Z_STRVAL_P(region_zval);
437440
}

0 commit comments

Comments
 (0)