この部分がすごく怪しいと思い、自分で最初に乗せたソースコードを記載したが

問題なく上の処理が実施された。。。。

 

なんで。。。。。

 

なぞなぞだ。。。。。

 

static const char *do_user(void){
static char buf[32];
static struct passwd *p;
static int lastuid = -1;
if(P_euid != lastuid){
p = getpwuid(P_euid);
if(p) snprintf(buf, sizeof buf, "%-8.8s", p->pw_name);
else snprintf(buf, sizeof buf, "%5d ", P_euid);
}
return buf;
}