A small memory footprint AMQP implimentation
Dependents: iothub_client_sample_amqp remote_monitoring simplesample_amqp
Diff: amqpvalue.c
- Revision:
- 25:1101516ee67d
- Parent:
- 23:1111ee8bcba4
- Child:
- 26:64f1113cb959
--- a/amqpvalue.c Mon May 08 10:50:45 2017 -0700 +++ b/amqpvalue.c Mon May 22 10:35:21 2017 -0700 @@ -1263,12 +1263,10 @@ } else { + uint32_t i; value_data->value.list_value.items = new_list; /* Codes_SRS_AMQPVALUE_01_162: [When a list is grown a null AMQP_VALUE shall be inserted as new list items to fill the list up to the new size.] */ - uint32_t i; - - /* Codes_SRS_AMQPVALUE_01_162: [When a list is grown a null AMQP_VALUE shall be inserted as new list items to fill the list up to the new size.] */ for (i = value_data->value.list_value.count; i < list_size; i++) { new_list[i] = amqpvalue_create_null(); @@ -3530,9 +3528,10 @@ static int count_bytes(void* context, const unsigned char* bytes, size_t length) { + size_t* byte_count; (void)bytes; - size_t* byte_count = (size_t*)context; + byte_count = (size_t*)context; *byte_count += length; return 0; @@ -3679,9 +3678,9 @@ { /* API issue: the decoded_value should be removed completely: TODO: uAMQP: inner_decoder_callback in amqpvalue.c could probably do without the decoded_value ... */ - (void)decoded_value; INTERNAL_DECODER_DATA* internal_decoder_data = (INTERNAL_DECODER_DATA*)context; INTERNAL_DECODER_DATA* inner_decoder = (INTERNAL_DECODER_DATA*)internal_decoder_data->inner_decoder; + (void)decoded_value; inner_decoder->decoder_state = DECODER_STATE_DONE; } @@ -3726,8 +3725,9 @@ case 0x00: /* descriptor */ { + AMQP_VALUE_DATA* descriptor; internal_decoder_data->decode_to_value->type = AMQP_TYPE_DESCRIBED; - AMQP_VALUE_DATA* descriptor = (AMQP_VALUE_DATA*)malloc(sizeof(AMQP_VALUE_DATA)); + descriptor = (AMQP_VALUE_DATA*)malloc(sizeof(AMQP_VALUE_DATA)); if (descriptor == NULL) { internal_decoder_data->decoder_state = DECODER_STATE_ERROR; @@ -4175,9 +4175,10 @@ if (inner_decoder->decoder_state == DECODER_STATE_DONE) { + AMQP_VALUE_DATA* described_value; internal_decoder_destroy(inner_decoder); - AMQP_VALUE_DATA* described_value = (AMQP_VALUE_DATA*)malloc(sizeof(AMQP_VALUE_DATA)); + described_value = (AMQP_VALUE_DATA*)malloc(sizeof(AMQP_VALUE_DATA)); if (described_value == NULL) { internal_decoder_data->decoder_state = DECODER_STATE_ERROR; @@ -5524,9 +5525,10 @@ if (internal_decoder_data->bytes_decoded == 0) { + AMQP_VALUE_DATA* array_item; internal_decoder_data->decode_value_state.array_value_state.constructor_byte = buffer[0]; - AMQP_VALUE_DATA* array_item = (AMQP_VALUE_DATA*)malloc(sizeof(AMQP_VALUE_DATA)); + array_item = (AMQP_VALUE_DATA*)malloc(sizeof(AMQP_VALUE_DATA)); if (array_item == NULL) { LogError("Could not allocate memory for array item to be decoded");