diff options
author | Milton Miller <miltonm@bga.com> | 2007-07-07 01:18:49 -0500 |
---|---|---|
committer | Jon Loeliger <jdl@freescale.com> | 2007-07-07 10:09:36 -0500 |
commit | 46779e8f8e5a13388835e9251fb741396e2d7f13 (patch) | |
tree | c0b0e0d8357050c1d57f14aeb91ba3b6e29d29b6 /data.c | |
parent | d4290338514abdfac372aa9a7af180543c0622ad (diff) | |
download | dtc-46779e8f8e5a13388835e9251fb741396e2d7f13.zip dtc-46779e8f8e5a13388835e9251fb741396e2d7f13.tar.gz dtc-46779e8f8e5a13388835e9251fb741396e2d7f13.tar.bz2 |
dtc: clean up grow_data_for()
Change the grow_data_for function to copy struct data and
modifiy the fields it is updating instead of storing all
fields individually to a stack allocated struct.
This reduces maintence for future enhancements as now all
instances of struct data are created by modifying a copy
of an existing struct data or directly copying empty_data.
Signed-off-by: Milton Miller <miltonm@bga.com>
Diffstat (limited to 'data.c')
-rw-r--r-- | data.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -57,6 +57,8 @@ struct data data_grow_for(struct data d, int xlen) if (xlen == 0) return d; + nd = d; + newsize = xlen; while ((d.len + xlen) > newsize) @@ -64,8 +66,6 @@ struct data data_grow_for(struct data d, int xlen) nd.asize = newsize; nd.val = xrealloc(d.val, newsize); - nd.len = d.len; - nd.refs = d.refs; assert(nd.asize >= (d.len + xlen)); |