~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to libdrizzle/my_time.c

  • Committer: Jay Pipes
  • Date: 2008-07-17 17:54:00 UTC
  • mto: This revision was merged to the branch mainline in revision 182.
  • Revision ID: jay@mysql.com-20080717175400-xm2aazihjra8mdzq
Removal of DBUG from libdrizzle/ - Round 2

Show diffs side-by-side

added added

removed removed

Lines of Context:
170
170
  const uchar *format_position;
171
171
  my_bool found_delimitier= 0, found_space= 0;
172
172
  uint frac_pos, frac_len;
173
 
  DBUG_ENTER("str_to_datetime");
174
 
  DBUG_PRINT("ENTER",("str: %.*s",length,str));
175
173
 
176
174
  *was_cut= 0;
177
175
 
181
179
  if (str == end || ! my_isdigit(&my_charset_latin1, *str))
182
180
  {
183
181
    *was_cut= 1;
184
 
    DBUG_RETURN(MYSQL_TIMESTAMP_NONE);
 
182
    return(MYSQL_TIMESTAMP_NONE);
185
183
  }
186
184
 
187
185
  is_internal_format= 0;
228
226
        if (flags & TIME_DATETIME_ONLY)
229
227
        {
230
228
          *was_cut= 1;
231
 
          DBUG_RETURN(MYSQL_TIMESTAMP_NONE);   /* Can't be a full datetime */
 
229
          return(MYSQL_TIMESTAMP_NONE);   /* Can't be a full datetime */
232
230
        }
233
231
        /* Date field.  Set hour, minutes and seconds to 0 */
234
232
        date[0]= date[1]= date[2]= date[3]= date[4]= 0;
270
268
    if (tmp_value > 999999)                     /* Impossible date part */
271
269
    {
272
270
      *was_cut= 1;
273
 
      DBUG_RETURN(MYSQL_TIMESTAMP_NONE);
 
271
      return(MYSQL_TIMESTAMP_NONE);
274
272
    }
275
273
    date[i]=tmp_value;
276
274
    not_zero_date|= tmp_value;
307
305
        if (!(allow_space & (1 << i)))
308
306
        {
309
307
          *was_cut= 1;
310
 
          DBUG_RETURN(MYSQL_TIMESTAMP_NONE);
 
308
          return(MYSQL_TIMESTAMP_NONE);
311
309
        }
312
310
        found_space= 1;
313
311
      }
338
336
  if (found_delimitier && !found_space && (flags & TIME_DATETIME_ONLY))
339
337
  {
340
338
    *was_cut= 1;
341
 
    DBUG_RETURN(MYSQL_TIMESTAMP_NONE);          /* Can't be a datetime */
 
339
    return(MYSQL_TIMESTAMP_NONE);          /* Can't be a datetime */
342
340
  }
343
341
 
344
342
  str= last_field_pos;
356
354
    if (!year_length)                           /* Year must be specified */
357
355
    {
358
356
      *was_cut= 1;
359
 
      DBUG_RETURN(MYSQL_TIMESTAMP_NONE);
 
357
      return(MYSQL_TIMESTAMP_NONE);
360
358
    }
361
359
 
362
360
    l_time->year=               date[(uint) format_position[0]];
435
433
    }
436
434
  }
437
435
 
438
 
  DBUG_RETURN(l_time->time_type=
 
436
  return(l_time->time_type=
439
437
              (number_of_fields <= 3 ? MYSQL_TIMESTAMP_DATE :
440
438
                                       MYSQL_TIMESTAMP_DATETIME));
441
439
 
442
440
err:
443
441
  bzero((char*) l_time, sizeof(*l_time));
444
 
  DBUG_RETURN(MYSQL_TIMESTAMP_ERROR);
 
442
  return(MYSQL_TIMESTAMP_ERROR);
445
443
}
446
444
 
447
445
 
757
755
{
758
756
  long delsum;
759
757
  int temp;
760
 
  DBUG_ENTER("calc_daynr");
761
758
 
762
759
  if (year == 0 && month == 0 && day == 0)
763
 
    DBUG_RETURN(0);                             /* Skip errors */
 
760
    return(0);                          /* Skip errors */
764
761
  delsum= (long) (365L * year+ 31*(month-1) +day);
765
762
  if (month <= 2)
766
763
      year--;
767
764
  else
768
765
    delsum-= (long) (month*4+23)/10;
769
766
  temp=(int) ((year/100+1)*3)/4;
770
 
  DBUG_PRINT("exit",("year: %d  month: %d  day: %d -> daynr: %ld",
771
 
                     year+(month <= 2),month,day,delsum+year/4-temp));
772
 
  DBUG_RETURN(delsum+(int) year/4-temp);
 
767
  return(delsum+(int) year/4-temp);
773
768
} /* calc_daynr */
774
769
 
775
770
 
1062
1057
    to[0]='\0';
1063
1058
    return 0;
1064
1059
  default:
1065
 
    DBUG_ASSERT(0);
 
1060
    assert(0);
1066
1061
    return 0;
1067
1062
  }
1068
1063
}
1239
1234
  case MYSQL_TIMESTAMP_ERROR:
1240
1235
    return 0ULL;
1241
1236
  default:
1242
 
    DBUG_ASSERT(0);
 
1237
    assert(0);
1243
1238
  }
1244
1239
  return 0;
1245
1240
}