commit - 4999080d5b0c41a3aab78414a0329154441d1dce
commit + 783aadbdcd39e3850c61528c77fcf878448824f4
blob - 10923a91cd03e465a076eaf6763842dbf4f4c677
blob + 0ae5a5bb2d14eb1bf23e87d1bc4f6dc7a54922f9
--- src/cmd/acid/proc.c
+++ src/cmd/acid/proc.c
{
Lsym *s;
int i;
+ Regs *regs;
if(symmap == 0)
error("no map");
return;
if(corhdr){
- free(correg);
- correg = nil;
- correg = coreregs(corhdr, xpid);
- if(correg == nil)
+ regs = coreregs(corhdr, xpid);
+ if(regs == nil)
error("no such pid in core dump");
+ free(correg);
+ correg = regs;
}else{
/* XXX should only change register set here if cormap already mapped */
if(xpid <= 0)
unmapfile(corhdr, cormap);
free(correg);
correg = nil;
+ pid = -1;
+ corpid = -1;
if(mapproc(xpid, cormap, &correg) < 0)
error("setproc %d: %r", xpid);