diff options
author | kay.sievers@vrfy.org <kay.sievers@vrfy.org> | 2004-03-04 18:55:34 -0800 |
---|---|---|
committer | Greg KH <gregkh@suse.de> | 2005-04-26 21:35:08 -0700 |
commit | ef672b3dc450846d540cf1a0519fe273bbd62e5f (patch) | |
tree | 360906e994de85195bc9d896495de18568a51063 /namedev.c | |
parent | a3fa7908e25bda3fc8627c7a91878a7825f9391f (diff) |
[PATCH] better fix for NAME="foo-%c{N}" gets a truncated name
On Wed, Mar 03, 2004 at 04:56:34PM -0800, Greg KH wrote:
> On Wed, Mar 03, 2004 at 03:57:04PM -0800, Patrick Mansfield wrote:
> >
> > Here is a patch for some new tests.
>
> Applied, thanks.
Here is a small improvement, which looks much better.
Hey Pat, thanks a lot for finding the recent bug, hope this one will
not break it again :)
Diffstat (limited to 'namedev.c')
-rw-r--r-- | namedev.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -220,8 +220,9 @@ static void apply_format(struct udevice *udev, char *string, size_t maxsize, char *attr; int len; int i; - int spos, slen; char c; + char *spos; + int slen; struct sysfs_attribute *tmpattr; pos = string; @@ -278,7 +279,6 @@ static void apply_format(struct udevice *udev, char *string, size_t maxsize, i = atoi(attr); if (i > 0) { foreach_strpart(udev->program_result, " \n\r", spos, slen) { - strnfieldcpy(temp2, udev->program_result + spos, slen+1); i--; if (i == 0) break; @@ -287,6 +287,7 @@ static void apply_format(struct udevice *udev, char *string, size_t maxsize, dbg("requested part of result string not found"); break; } + strnfieldcpy(temp2, spos, slen+1); strnfieldcat(string, temp2, maxsize); dbg("substitute part of result string '%s'", temp2); } else { |