diff options
Diffstat (limited to 'qpid/extras/dispatch/src/compose.c')
| -rw-r--r-- | qpid/extras/dispatch/src/compose.c | 22 |
1 files changed, 1 insertions, 21 deletions
diff --git a/qpid/extras/dispatch/src/compose.c b/qpid/extras/dispatch/src/compose.c index 352c282258..6eb2ab1c73 100644 --- a/qpid/extras/dispatch/src/compose.c +++ b/qpid/extras/dispatch/src/compose.c @@ -21,30 +21,10 @@ #include <qpid/dispatch/alloc.h> #include <qpid/dispatch/buffer.h> #include <qpid/dispatch/amqp.h> -#include "message_private.h" #include "compose_private.h" #include <memory.h> -typedef struct dx_composite_t { - DEQ_LINKS(struct dx_composite_t); - int isMap; - uint32_t count; - uint32_t length; - dx_field_location_t length_location; - dx_field_location_t count_location; -} dx_composite_t; - -ALLOC_DECLARE(dx_composite_t); ALLOC_DEFINE(dx_composite_t); -DEQ_DECLARE(dx_composite_t, dx_field_stack_t); - - -struct dx_composed_field_t { - dx_buffer_list_t buffers; - dx_field_stack_t fieldStack; -}; - -ALLOC_DECLARE(dx_composed_field_t); ALLOC_DEFINE(dx_composed_field_t); @@ -197,7 +177,7 @@ static void dx_compose_end_composite(dx_composed_field_t *field) // dx_composite_t *enclosing = DEQ_HEAD(field->fieldStack); if (enclosing) { - enclosing->length += 4 + comp->length; + enclosing->length += (comp->length - 4); // the length and count were already accounted for enclosing->count++; } |
