← Commit list

104d544fd

Denis Vlasenko
Denis Vlasenko
2008-03-19
FAILED Duration: 24s

Subject

die_if_bad_username: shrink: 88 -> 77 bytes

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

libbb/die_if_bad_username.c+13 -11
@@ -18,17 +18,19 @@
void die_if_bad_username(const char *name)
{
- int i = 0;
-
+ goto skip; /* 1st char being dash isn't valid */
do {
- if (!isalnum(*name)
- && !(*name == '_')
- && !(*name == '.')
- && !(*name == '@')
- && !(*name == '-' && i)
- && !(*name == '$' && !*(name + 1))
- )
- bb_error_msg_and_die("illegal character '%c'", *name);
- i++;
+ if (*name == '-')
+ continue;
+ skip:
+ if (isalnum(*name)
+ || *name == '_'
+ || *name == '.'
+ || *name == '@'
+ || (*name == '$' && !*(name + 1))
+ ) {
+ continue;
+ }
+ bb_error_msg_and_die("illegal character '%c'", *name);
} while (*++name);
}