- sigsetmask(sigblock(0) & ~sigmask(SIGINT));
- vp++;
- while (*vp && *vp[0] == '-') {
- if (*vp && eq(*vp, "-h"))
- hflg++;
- else if (*vp && eq(*vp, "-r"))
- rflg++;
- vp++;
+ (void) sigsetmask(sigblock(0L) & ~sigmask(SIGINT));
+ while (*++vp && **vp == '-') {
+ char *vp2 = *vp;
+
+ while (*++vp2)
+ switch (*vp2) {
+ case 'h':
+ hflg++;
+ break;
+ case 'r':
+ rflg++;
+ break;
+ case '-': /* ignore multiple '-'s */
+ break;
+ default:
+ printf("Unknown flag: -%c\n", *vp2);
+ error("Usage: history [-rh] [# number of events]");
+ }