blob: 637739908db94f5053e65295e1d574cb25cbbe33 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include "../ninitfeatures.h"
unsigned int scan_sec(const char *src, unsigned long *ul) /*EXTRACT_INCL*/ {
unsigned long tmp, u=0;
char ch, *s = (char *)src;
for (; *s; ) {
s += scan_ulong(s, &tmp);
ch = *s;
if (ch > 96) ch -= 32; /* upper case */
switch (ch) {
case 'W': tmp *= 10080; s++; break;
case 'D': tmp *= 1440; s++; break;
case 'H': tmp *= 60; s++; break;
case 0: break;
default: u += tmp; goto ready;
}
u += tmp;
}
ready:
*ul = u * 60;
return s-src;
}
|