summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2012-12-01 08:18:11 +1100
committerChris Johns <chrisj@rtems.org>2012-12-01 08:18:11 +1100
commit57f4a27f26b0e9743f7516fab5e685983e46b7ab (patch)
tree4f0a0b4d2f13c72bece605acba348b7cc4e62507
parent00360b90b70f2088a64e92e3473828722b15ce9b (diff)
Set the length before calling the obj cache reader.
-rw-r--r--rtl-obj-comp.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/rtl-obj-comp.c b/rtl-obj-comp.c
index 451d1cb..90cbda7 100644
--- a/rtl-obj-comp.c
+++ b/rtl-obj-comp.c
@@ -101,8 +101,6 @@ rtems_rtl_obj_comp_read (rtems_rtl_obj_comp_t* comp,
{
memcpy (buffer, comp->buffer, buffer_level);
- length -= buffer_level;
-
if ((comp->level - buffer_level) != 0)
{
memmove (comp->buffer,
@@ -110,14 +108,15 @@ rtems_rtl_obj_comp_read (rtems_rtl_obj_comp_t* comp,
comp->level - buffer_level);
}
+ length -= buffer_level;
comp->level -= buffer_level;
}
if (length)
{
uint8_t* input = NULL;
- size_t in_length;
uint16_t block_size;
+ size_t in_length = sizeof (block_size);
int decompressed;
if (!rtems_rtl_obj_cache_read (comp->cache, comp->fd, comp->offset,