Use gcc function attribute `format' to catch bad format strings. Fix

them.  From Marc Olzheim.
Type modifier 'l' was missing in many places, probably rendering the
server useless on 64-bit hosts.
(ef_flush, ef_write, ef_extend, lwpCreate, lwpDestroy): Use conversion
specifier 'p' to print pointers.
(check_market): Fix display of loan amount.
(doland): Fix unescaped '%' (undefined behavior).
(ldump, ndump, pdump, sdump): Don't use flag '0' with conversion
specifier 's' (undefined behavior).
(dump, ldump, lost, ndump, pdump, sdump, empth_create, update_sched):
Cast time_t and pthread_t to long for printing.
(lwpStackCheck, lwpStackCheckUsed, finish_sects): Insert cast to fix
argument type on all platforms.
(prod): Remove extra argument.
(perform_mission, airdamage, retreat_land1, lwpReschedule): Format
string missed arguments.
This commit is contained in:
Markus Armbruster 2004-03-09 12:27:40 +00:00
parent 735adbf41b
commit e7d75b2279
38 changed files with 106 additions and 93 deletions

View file

@ -170,7 +170,7 @@ lwpReschedule(void)
if (LwpCurrent != nextp && !(LwpCurrent && i)) {
/* restore previous context */
lwpStatus(nextp, "switch in", nextp->pri);
lwpStatus(nextp, "switch in %d", nextp->pri);
LwpCurrent = nextp;
*LwpContextPtr = LwpCurrent->ud;
#ifdef BOUNDS_CHECK
@ -296,8 +296,8 @@ lwpCreate(int priority, void (*entry)(void *), int size, int flags, char *name,
newp->dead = 0;
if (flags & LWP_STACKCHECK)
lwpStackCheckInit(newp);
lwpStatus(newp, "creating process structure sbtm: %d",
(int)newp->sbtm);
lwpStatus(newp, "creating process structure sbtm: %p",
newp->sbtm);
lwpReady(newp);
lwpReady(LwpCurrent);
#ifdef UCONTEXT
@ -316,7 +316,7 @@ lwpDestroy(struct lwpProc *proc)
lwpStackCheckUsed(proc);
lwpStackCheck(proc);
}
lwpStatus(proc, "destroying sbtm: %d", (int)proc->sbtm);
lwpStatus(proc, "destroying sbtm: %p", proc->sbtm);
proc->entry = 0;
proc->ud = 0;
proc->argv = 0;
@ -531,7 +531,7 @@ lwpStackCheck(struct lwpProc *newp)
amt = (i + 1) * sizeof(long);
}
lwpStatus(newp, "Thread stack overflowed %d bytes (of %u)",
amt, newp->size - 2 * LWP_REDZONE - sizeof(stkalign_t));
amt, newp->size - 2 * LWP_REDZONE - (int)sizeof(stkalign_t));
return (0);
}
for (lp = newp->lowmark, i = 0; i < LWP_REDZONE / sizeof(long);
@ -551,7 +551,7 @@ lwpStackCheck(struct lwpProc *newp)
amt = (LWP_REDZONE - i + 1) * sizeof(long);
}
lwpStatus(newp, "Thread stack underflow %d bytes (of %u)",
amt, newp->size - 2 * LWP_REDZONE - sizeof(stkalign_t));
amt, newp->size - 2 * LWP_REDZONE - (int)sizeof(stkalign_t));
return (0);
}
return (1);
@ -592,7 +592,7 @@ lwpStackCheckUsed(struct lwpProc *newp)
}
lwpStatus(newp, "stack use: %u bytes (of %u total)",
(i * sizeof(long)) - LWP_REDZONE,
newp->size - 2 * LWP_REDZONE - sizeof(stkalign_t));
newp->size - 2 * LWP_REDZONE - (int)sizeof(stkalign_t));
}
#endif

View file

@ -128,7 +128,7 @@ lwpWakeupFd(struct lwpProc *proc)
void
lwpSleepUntil(long int until)
{
lwpStatus(LwpCurrent, "sleeping for %d sec", until - time(0));
lwpStatus(LwpCurrent, "sleeping for %ld sec", until - time(0));
LwpCurrent->runtime = until;
if (LwpSelect.maxfd == 0 && LwpSelect.delayq.head == 0) {
/* select process is sleeping until first waiter arrives */