All of lore.kernel.org
 help / color / mirror / Atom feed
From: Milton Miller <miltonm@bga.com>
To: Jon Loeliger <jdl@jdl.com>
Cc: linuxppc-dev@ozlabs.org, David Gibson <david@gibson.dropbear.id.au>
Subject: [PATCH 05/11] dtc: clean up grow_data_for()
Date: Sat, 7 Jul 2007 01:18:49 -0500 (CDT)	[thread overview]
Message-ID: <dtc-5-05.miltonm@bga.com> (raw)
In-Reply-To: <dtc-5-00.miltonm@bga.com>

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>
--- 
It took me a bit of time to find the source of the
uninitialized pointer that was causing my changes
to segfault.

diff --git a/data.c b/data.c
index 5d7db17..3d68792 100644
--- a/data.c
+++ b/data.c
@@ -57,6 +57,8 @@ struct data data_grow_for(struct data d,
 	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,
 
 	nd.asize = newsize;
 	nd.val = xrealloc(d.val, newsize);
-	nd.len = d.len;
-	nd.refs = d.refs;
 
 	assert(nd.asize >= (d.len + xlen));
 

  parent reply	other threads:[~2007-07-07  6:18 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-07  6:18 [PATCH 00/11] dtc: some fixes, and make asm labels for data Milton Miller
2007-07-07  6:18 ` [PATCH 01/11] dtc: fix asm for version 17 Milton Miller
2007-07-18  1:56   ` David Gibson
2007-07-07  6:18 ` [PATCH 02/11] dtc: move declaration of yyerror Milton Miller
2007-07-19  5:02   ` David Gibson
2007-07-07  6:18 ` [PATCH 03/11] dtc: complain about unparsed digits in cell lists Milton Miller
2007-07-18  2:01   ` David Gibson
2007-07-07  6:18 ` Milton Miller [this message]
2007-07-07  6:18 ` [PATCH 04/11] dtc: implement labels on memory reserve slots Milton Miller
2007-07-07  6:18 ` [PATCH 06/11] dtc: allow a label: in any dts context Milton Miller
2007-07-07  6:18 ` [PATCH 07/11] dtc: implement labels on property data Milton Miller
2007-07-07  6:18 ` [PATCH 08/11] dtc: store labels in asscending order Milton Miller
2007-07-07  6:18 ` [PATCH 09/11] dtc: add a testcase with labels Milton Miller
2007-07-07  6:18 ` [PATCH 10/11] dtc: align header comments in asm output Milton Miller
2007-07-07  6:18 ` [PATCH 11/11] dtc: format memory reserve as pairs on two lines Milton Miller
2007-07-07 19:24 ` [PATCH 00/11] dtc: some fixes, and make asm labels for data Jon Loeliger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=dtc-5-05.miltonm@bga.com \
    --to=miltonm@bga.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=jdl@jdl.com \
    --cc=linuxppc-dev@ozlabs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.