|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] common/vsprintf: fix return value when formatting symbolic addresses
commit fd62e281dfe6183cd140cf2cf2bca1a10b574aa7
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Tue Dec 3 09:57:41 2013 +0100
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Tue Dec 3 09:57:41 2013 +0100
common/vsprintf: fix return value when formatting symbolic addresses
When the buffer to be formatted to is too small, the function return
value is expected to be the number of characters that would be printed
(particularly important if that value is then used for allocating a
buffer). Hence incrementing the active pointer must always be
independent of actually storing a character.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Acked-by: Keir Fraser <keir@xxxxxxx>
---
xen/common/vsprintf.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/xen/common/vsprintf.c b/xen/common/vsprintf.c
index 43dc392..1a6198e 100644
--- a/xen/common/vsprintf.c
+++ b/xen/common/vsprintf.c
@@ -294,7 +294,8 @@ static char *pointer(char *str, char *end, const char
**fmt_ptr,
/* Print '+<offset>/<len>' */
str = number(str, end, sym_offset, 16, -1, -1, SPECIAL|SIGN|PLUS);
if ( str <= end )
- *str++ = '/';
+ *str = '/';
+ ++str;
str = number(str, end, sym_size, 16, -1, -1, SPECIAL);
}
--
generated by git-patchbot for /home/xen/git/xen.git#master
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |