hexdump: fix SEGV in hexdump -e ""

This commit is contained in:
Denis Vlasenko 2008-08-23 23:15:48 +00:00
parent 7fe21c69cd
commit 15f2fdb2b9

View File

@ -298,7 +298,7 @@ static void rewrite(priv_dumper_t *dumper, FS *fs)
* if, rep count is greater than 1, no trailing whitespace * if, rep count is greater than 1, no trailing whitespace
* gets output from the last iteration of the format unit. * gets output from the last iteration of the format unit.
*/ */
for (fu = fs->nextfu;; fu = fu->nextfu) { for (fu = fs->nextfu; fu; fu = fu->nextfu) {
if (!fu->nextfu && fs->bcnt < dumper->blocksize if (!fu->nextfu && fs->bcnt < dumper->blocksize
&& !(fu->flags & F_SETREP) && fu->bcnt && !(fu->flags & F_SETREP) && fu->bcnt
) { ) {
@ -723,7 +723,8 @@ void FAST_FUNC bb_dump_add(dumper_t* pub_dumper, const char *fmt)
nextfupp = &tfs->nextfu; nextfupp = &tfs->nextfu;
/* take the format string and break it up into format units */ /* take the format string and break it up into format units */
for (p = fmt;;) { p = fmt;
for (;;) {
p = skip_whitespace(p); p = skip_whitespace(p);
if (!*p) { if (!*p) {
break; break;