mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	* ext/date/date_{parse,strptime}.c [ruby-dev:45303].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
		
							parent
							
								
									85e866978f
								
							
						
					
					
						commit
						9a0cb80252
					
				
					 3 changed files with 19 additions and 14 deletions
				
			
		| 
						 | 
				
			
			@ -1,3 +1,7 @@
 | 
			
		|||
Sat Mar  3 12:12:16 2012  Tadayoshi Funaba  <tadf@dotrb.org>
 | 
			
		||||
 | 
			
		||||
	* ext/date/date_{parse,strptime}.c [ruby-dev:45303].
 | 
			
		||||
 | 
			
		||||
Sat Mar  3 10:09:21 2012  Aaron Patterson <aaron@tenderlovemaking.com>
 | 
			
		||||
 | 
			
		||||
	* lib/xmlrpc/client.rb (initialize): net/http defaults to 1_2 in 1.8+,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -89,10 +89,10 @@ s3e(VALUE hash, VALUE y, VALUE m, VALUE d, int bc)
 | 
			
		|||
	size_t l;
 | 
			
		||||
 | 
			
		||||
	s = RSTRING_PTR(y);
 | 
			
		||||
	while (!issign(*s) && !isdigit(*s))
 | 
			
		||||
	while (!issign((unsigned char)*s) && !isdigit((unsigned char)*s))
 | 
			
		||||
	    s++;
 | 
			
		||||
	bp = s;
 | 
			
		||||
	if (issign(*s))
 | 
			
		||||
	if (issign((unsigned char)*s))
 | 
			
		||||
	    s++;
 | 
			
		||||
	l = strspn(s, "0123456789");
 | 
			
		||||
	ep = s + l;
 | 
			
		||||
| 
						 | 
				
			
			@ -138,7 +138,7 @@ s3e(VALUE hash, VALUE y, VALUE m, VALUE d, int bc)
 | 
			
		|||
	VALUE iy;
 | 
			
		||||
 | 
			
		||||
	s = RSTRING_PTR(y);
 | 
			
		||||
	while (!issign(*s) && !isdigit(*s))
 | 
			
		||||
	while (!issign((unsigned char)*s) && !isdigit((unsigned char)*s))
 | 
			
		||||
	    s++;
 | 
			
		||||
	bp = s;
 | 
			
		||||
	if (issign(*s)) {
 | 
			
		||||
| 
						 | 
				
			
			@ -170,7 +170,7 @@ s3e(VALUE hash, VALUE y, VALUE m, VALUE d, int bc)
 | 
			
		|||
	VALUE im;
 | 
			
		||||
 | 
			
		||||
	s = RSTRING_PTR(m);
 | 
			
		||||
	while (!isdigit(*s))
 | 
			
		||||
	while (!isdigit((unsigned char)*s))
 | 
			
		||||
	    s++;
 | 
			
		||||
	bp = s;
 | 
			
		||||
	l = strspn(s, "0123456789");
 | 
			
		||||
| 
						 | 
				
			
			@ -192,7 +192,7 @@ s3e(VALUE hash, VALUE y, VALUE m, VALUE d, int bc)
 | 
			
		|||
	VALUE id;
 | 
			
		||||
 | 
			
		||||
	s = RSTRING_PTR(d);
 | 
			
		||||
	while (!isdigit(*s))
 | 
			
		||||
	while (!isdigit((unsigned char)*s))
 | 
			
		||||
	    s++;
 | 
			
		||||
	bp = s;
 | 
			
		||||
	l = strspn(s, "0123456789");
 | 
			
		||||
| 
						 | 
				
			
			@ -381,14 +381,14 @@ date_zone_to_diff(VALUE str)
 | 
			
		|||
    dest = d = ALLOCA_N(char, l + 1);
 | 
			
		||||
 | 
			
		||||
    for (i = 0; i < l; i++) {
 | 
			
		||||
	if (isspace(s[i]) || s[i] == '\0') {
 | 
			
		||||
	if (isspace((unsigned char)s[i]) || s[i] == '\0') {
 | 
			
		||||
	    if (!sp)
 | 
			
		||||
		*d++ = ' ';
 | 
			
		||||
	    sp = 1;
 | 
			
		||||
	}
 | 
			
		||||
	else {
 | 
			
		||||
	    if (isalpha(s[i]))
 | 
			
		||||
		*d++ = tolower(s[i]);
 | 
			
		||||
	    if (isalpha((unsigned char)s[i]))
 | 
			
		||||
		*d++ = tolower((unsigned char)s[i]);
 | 
			
		||||
	    else
 | 
			
		||||
		*d++ = s[i];
 | 
			
		||||
	    sp = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -1413,7 +1413,7 @@ parse_ddd_cb(VALUE m, VALUE hash)
 | 
			
		|||
		s3 = s1;
 | 
			
		||||
	    zone = rb_str_new2(s3);
 | 
			
		||||
	    set_hash("zone", zone);
 | 
			
		||||
	    if (isdigit(*s1))
 | 
			
		||||
	    if (isdigit((unsigned char)*s1))
 | 
			
		||||
		*--s1 = '+';
 | 
			
		||||
	    set_hash("offset", date_zone_to_diff(rb_str_new2(s1)));
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -1520,9 +1520,9 @@ check_class(VALUE s)
 | 
			
		|||
 | 
			
		||||
    flags = 0;
 | 
			
		||||
    for (i = 0; i < RSTRING_LEN(s); i++) {
 | 
			
		||||
	if (isalpha(RSTRING_PTR(s)[i]))
 | 
			
		||||
	if (isalpha((unsigned char)RSTRING_PTR(s)[i]))
 | 
			
		||||
	    flags |= HAVE_ALPHA;
 | 
			
		||||
	if (isdigit(RSTRING_PTR(s)[i]))
 | 
			
		||||
	if (isdigit((unsigned char)RSTRING_PTR(s)[i]))
 | 
			
		||||
	    flags |= HAVE_DIGIT;
 | 
			
		||||
	if (RSTRING_PTR(s)[i] == '-')
 | 
			
		||||
	    flags |= HAVE_DASH;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -58,14 +58,15 @@ static const char *extz_pats[] = {
 | 
			
		|||
static int
 | 
			
		||||
num_pattern_p(const char *s)
 | 
			
		||||
{
 | 
			
		||||
    if (isdigit(*s))
 | 
			
		||||
    if (isdigit((unsigned char)*s))
 | 
			
		||||
	return 1;
 | 
			
		||||
    if (*s == '%') {
 | 
			
		||||
	s++;
 | 
			
		||||
	if (*s == 'E' || *s == 'O')
 | 
			
		||||
	    s++;
 | 
			
		||||
	if (*s &&
 | 
			
		||||
	    (strchr("CDdeFGgHIjkLlMmNQRrSsTUuVvWwXxYy", *s) || isdigit(*s)))
 | 
			
		||||
	    (strchr("CDdeFGgHIjkLlMmNQRrSsTUuVvWwXxYy", *s) ||
 | 
			
		||||
	     isdigit((unsigned char)*s)))
 | 
			
		||||
	    return 1;
 | 
			
		||||
    }
 | 
			
		||||
    return 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -624,7 +625,7 @@ date__strptime_internal(const char *str, size_t slen,
 | 
			
		|||
	  case '\v':
 | 
			
		||||
	  case '\f':
 | 
			
		||||
	  case '\r':
 | 
			
		||||
	    while (isspace(str[si]))
 | 
			
		||||
	    while (isspace((unsigned char)str[si]))
 | 
			
		||||
		si++;
 | 
			
		||||
	    fi++;
 | 
			
		||||
	    break;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue