~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/temporal.cc

  • Committer: Monty Taylor
  • Date: 2009-02-11 23:45:52 UTC
  • mfrom: (881 drizzle)
  • mto: This revision was merged to the branch mainline in revision 885.
  • Revision ID: mordred@inaugust.com-20090211234552-d57gtqlup0pr7g13
Merged trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
1229
1229
  int64_t part1;
1230
1230
  int64_t part2;
1231
1231
 
1232
 
  if (! (copy_from == 0LL || copy_from >= 10000101000000LL))
 
1232
  if (copy_from == 0LL)
 
1233
    return false;
 
1234
 
 
1235
  if (copy_from < 10000101000000LL)
1233
1236
  {
1234
1237
    if (copy_from < 101)
1235
1238
      return false;
1236
 
    if (copy_from <= (DRIZZLE_YY_PART_YEAR-1)*10000L+1231L)
 
1239
    else if (copy_from <= (DRIZZLE_YY_PART_YEAR-1)*10000L+1231L)
1237
1240
      copy_from= (copy_from+20000000L)*1000000L;                 /* YYMMDD, year: 2000-2069 */
1238
 
    if (copy_from < (DRIZZLE_YY_PART_YEAR)*10000L+101L)
 
1241
    else if (copy_from < (DRIZZLE_YY_PART_YEAR)*10000L+101L)
1239
1242
      return false;
1240
 
    if (copy_from <= 991231L)
 
1243
    else if (copy_from <= 991231L)
1241
1244
      copy_from= (copy_from+19000000L)*1000000L;                 /* YYMMDD, year: 1970-1999 */
1242
 
    if (copy_from < 10000101L)
 
1245
    else if (copy_from < 10000101L)
1243
1246
      return false;
1244
 
    if (copy_from <= 99991231L)
 
1247
    else if (copy_from <= 99991231L)
1245
1248
      copy_from= copy_from*1000000L;
1246
 
    if (copy_from < 101000000L)
 
1249
    else if (copy_from < 101000000L)
1247
1250
      return false;
1248
 
    if (copy_from <= (DRIZZLE_YY_PART_YEAR-1) * 10000000000LL + 1231235959LL)
 
1251
    else if (copy_from <= (DRIZZLE_YY_PART_YEAR-1) * 10000000000LL + 1231235959LL)
1249
1252
      copy_from= copy_from + 20000000000000LL;                   /* YYMMDDHHMMSS, 2000-2069 */
1250
 
    if (copy_from <  DRIZZLE_YY_PART_YEAR * 10000000000LL + 101000000LL)
 
1253
    else if (copy_from <  DRIZZLE_YY_PART_YEAR * 10000000000LL + 101000000LL)
1251
1254
      return false;
1252
 
    if (copy_from <= 991231235959LL)
 
1255
    else if (copy_from <= 991231235959LL)
1253
1256
      copy_from= copy_from + 19000000000000LL;          /* YYMMDDHHMMSS, 1970-1999 */
1254
1257
  }
1255
1258