if (!str[0]) { memset(id, 0, sizeof(*id)); return TRUE; } #ifdef DEBUG_shaver_iid
fill_iid(struct nsID *id, char *str){    PRInt32 count = 0;    PRInt32 n1, n2, n3[8];    PRInt32 n0, i;#ifdef DEBUG_shaver    fprintf(stderr, "parsing iid   %s\n", str);#endif    count = PR_sscanf(str, (str[0] == '{' ? nsIDFmt1 : nsIDFmt2),                      &n0, &n1, &n2,                       &n3[0],&n3[1],&n3[2],&n3[3],                      &n3[4],&n3[5],&n3[6],&n3[7]);    id->m0 = (PRInt32) n0;    id->m1 = (PRInt16) n1;    id->m2 = (PRInt16) n2;    for (i = 0; i < 8; i++) {      id->m3[i] = (PRInt8) n3[i];    }#ifdef DEBUG_shaver    if (count == 11) {        fprintf(stderr, "IID parsed to ");        print_IID(id, stderr);        fputs("\n", stderr);    }#endif    return (gboolean)(count == 11);}